Compartir a través de


Método ISCPSecureQuery::GetRights (mswmdm.h)

El método GetRights recupera información de derechos para el elemento de contenido actual. Los derechos son específicos del archivo.

Sintaxis

HRESULT GetRights(
  [in]      BYTE                *pData,
  [in]      DWORD               dwSize,
  [in]      BYTE                *pbSPSessionKey,
  [in]      DWORD               dwSessionKeyLen,
  [in]      IMDSPStorageGlobals *pStgGlobals,
  [out]     PWMDMRIGHTS         *ppRights,
  [out]     UINT                *pnRightsCount,
  [in, out] BYTE [8]            abMac
);

Parámetros

[in] pData

Puntero a los datos solicitados por GetDataDemands. Este parámetro debe incluirse en el código de autenticación del mensaje de entrada y debe cifrarse.

[in] dwSize

Número de bytes de datos en el búfer pData . Este parámetro debe incluirse en el código de autenticación del mensaje de entrada.

[in] pbSPSessionKey

Puntero a una matriz de bytes que contiene la clave de sesión para proteger la comunicación con el proveedor de servicios al que apunta pStgGlobals . Este parámetro debe incluirse en el código de autenticación del mensaje de entrada y debe cifrarse.

[in] dwSessionKeyLen

Longitud de la matriz de bytes a la que apunta pbSPSessionKey . Este parámetro debe incluirse en el código de autenticación del mensaje de entrada.

[in] pStgGlobals

Puntero a una interfaz IWMDMStorageGlobals en el almacenamiento raíz del medio o dispositivo hacia o desde el que se transfiere el archivo.

[out] ppRights

Puntero a una matriz de estructuras WMDMRIGHTS que contienen la información de derechos de este objeto. La matriz se asigna mediante este método y debe liberarse mediante CoTaskMemFree. Este parámetro se incluye en el código de autenticación del mensaje de salida.

[out] pnRightsCount

Número de estructuras WMDMRIGHTS en la matriz ppRights . Este parámetro se incluye en el código de autenticación del mensaje de salida.

[in, out] abMac

Matriz de ocho bytes que contiene el código de autenticación de mensajes para los datos de parámetros de este método. (WMDM_MAC_LENGTH se define como 8).

Valor devuelto

Si el método se realiza correctamente, devuelve S_OK. Si se produce un error, devuelve un código de error HRESULT .

Código devuelto Descripción
WMDM_E_CALL_OUT_OF_SEQUENCE
Este método se ha llamado fuera de secuencia. Primero se debe llamar a GetDataDemands y, a continuación, a ExamineData en ese orden.
WMDM_E_MAC_CHECK_FAILED
El código de autenticación del mensaje no es válido.
WMDM_E_NORIGHTS
El autor de la llamada no tiene los derechos necesarios para realizar la operación solicitada.
E_INVALIDARG
Un parámetro no es válido o es un puntero NULL .
E_FAIL
Se ha producido un error no especificado.

Comentarios

No se debe llamar a este método hasta GetDataDemands y, a continuación, se ha llamado a ExamineData , en ese orden.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado mswmdm.h
Library Mssachlp.lib

Consulte también

Interfaz ISCPSecureQuery

Interfaz IWMDMStorageGlobals

WMDMRIGHTS