Поделиться через


Метод ISCPSecureQuery::GetRights (mswmdm.h)

Метод GetRights извлекает сведения о правах для текущего фрагмента содержимого. Права зависят от файлов.

Синтаксис

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
);

Параметры

[in] pData

Указатель на данные, запрашиваемые GetDataDemands. Этот параметр должен быть включен в код проверки подлинности входного сообщения и должен быть зашифрован.

[in] dwSize

Количество байтов данных в буфере pData . Этот параметр должен быть включен в код проверки подлинности входного сообщения.

[in] pbSPSessionKey

Указатель на массив байтов, содержащий ключ сеанса для защиты связи с поставщиком услуг, на который указывает pStgGlobals . Этот параметр должен быть включен в код проверки подлинности входного сообщения и должен быть зашифрован.

[in] dwSessionKeyLen

Длина массива байтов, на который указывает pbSPSessionKey . Этот параметр должен быть включен в код проверки подлинности входного сообщения.

[in] pStgGlobals

Указатель на интерфейс IWMDMStorageGlobals в корневом хранилище носителя или устройства, из которого передается файл.

[out] ppRights

Указатель на массив структур WMDMRIGHTS, содержащий сведения о правах для этого объекта. Массив выделяется этим методом и должен быть освобожден с помощью CoTaskMemFree. Этот параметр включен в код проверки подлинности выходного сообщения.

[out] pnRightsCount

Количество структур WMDMRIGHTS в массиве ppRights . Этот параметр включен в код проверки подлинности выходного сообщения.

[in, out] abMac

Массив из восьми байтов, содержащий код проверки подлинности сообщения для данных параметров этого метода. (WMDM_MAC_LENGTH определяется как 8.)

Возвращаемое значение

Если метод завершается успешно, возвращает значение S_OK. В случае сбоя возвращается код ошибки HRESULT .

Код возврата Описание
WMDM_E_CALL_OUT_OF_SEQUENCE
Этот метод был вызван из последовательности. Сначала необходимо вызвать GetDataDemands, а затем — ExamineData в этом порядке.
WMDM_E_MAC_CHECK_FAILED
Недопустимый код проверки подлинности сообщения.
WMDM_E_NORIGHTS
Вызывающий объект не имеет прав, необходимых для выполнения запрошенной операции.
E_INVALIDARG
Недопустимый параметр или является указателем NULL .
E_FAIL
Произошла неизвестная ошибка.

Комментарии

Этот метод не должен вызываться до тех пор, пока не будут вызваны GetDataDemands и ExamineData в указанном порядке.

Требования

Требование Значение
Целевая платформа Windows
Header mswmdm.h
Библиотека Mssachlp.lib

См. также раздел

Интерфейс ISCPSecureQuery

Интерфейс IWMDMStorageGlobals

WMDMRIGHTS