Compartilhar via


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

O método GetRights recupera informações de direitos para a parte atual do conteúdo. Os direitos são específicos do arquivo.

Sintaxe

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

Ponteiro para dados solicitados por GetDataDemands. Esse parâmetro deve ser incluído no código de autenticação de mensagem de entrada e deve ser criptografado.

[in] dwSize

Número de bytes de dados no buffer pData . Esse parâmetro deve ser incluído no código de autenticação de mensagem de entrada.

[in] pbSPSessionKey

Ponteiro para uma matriz de bytes que contém a chave de sessão para proteger a comunicação com o provedor de serviços para o qual pStgGlobals aponta. Esse parâmetro deve ser incluído no código de autenticação de mensagem de entrada e deve ser criptografado.

[in] dwSessionKeyLen

Comprimento da matriz de bytes para a qual pbSPSessionKey aponta. Esse parâmetro deve ser incluído no código de autenticação de mensagem de entrada.

[in] pStgGlobals

Ponteiro para uma interface IWMDMStorageGlobals no armazenamento raiz da mídia ou dispositivo para ou do qual o arquivo está sendo transferido.

[out] ppRights

Ponteiro para uma matriz de estruturas WMDMRIGHTS que contêm as informações de direitos desse objeto. A matriz é alocada por esse método e deve ser liberada usando CoTaskMemFree. Esse parâmetro está incluído no código de autenticação de mensagem de saída.

[out] pnRightsCount

Número de estruturas WMDMRIGHTS na matriz ppRights . Esse parâmetro está incluído no código de autenticação de mensagem de saída.

[in, out] abMac

Matriz de oito bytes que contém o código de autenticação de mensagem para os dados de parâmetro desse método. (WMDM_MAC_LENGTH é definido como 8.)

Retornar valor

Se o método for bem-sucedido, retornará S_OK. Se falhar, retornará um código de erro HRESULT .

Código de retorno Descrição
WMDM_E_CALL_OUT_OF_SEQUENCE
Esse método foi chamado fora de sequência. GetDataDemands e, em seguida, ExamineData devem ser chamados primeiro, nessa ordem.
WMDM_E_MAC_CHECK_FAILED
O código de autenticação de mensagem não é válido.
WMDM_E_NORIGHTS
O chamador não tem os direitos necessários para executar a operação solicitada.
E_INVALIDARG
Um parâmetro é inválido ou é um ponteiro NULL .
E_FAIL
Ocorreu um erro não especificado.

Comentários

Esse método não deve ser chamado até GetDataDemands e, em seguida, ExamineData ter sido chamado, nessa ordem.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho mswmdm.h
Biblioteca Mssachlp.lib

Confira também

ISCPSecureQuery Interface

IWMDMStorageGlobals Interface

WMDMRIGHTS