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


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

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

Синтаксис

HRESULT GetDataDemands(
  [out]     UINT     *pfuFlags,
  [out]     DWORD    *pdwMinRightsData,
  [out]     DWORD    *pdwMinExamineData,
  [out]     DWORD    *pdwMinDecideData,
  [in, out] BYTE [8] abMac
);

Параметры

[out] pfuFlags

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

Flag Описание
WMDM_SCP_RIGHTS_DATA Поставщику защищенного содержимого требуются данные для определения прав на содержимое.
WMDM_SCP_EXAMINE_DATA Поставщику защищенного содержимого требуются данные, чтобы определить, отвечает ли он за содержимое.
WMDM_SCP_DECIDE_DATA Поставщику защищенного содержимого требуются данные, чтобы определить, следует ли разрешить скачивание содержимого.
WMDM_SCP_EXAMINE_EXTENSION Поставщику безопасного содержимого необходимо проверить расширение имени файла, чтобы определить, следует ли разрешить скачивание содержимого.
WMDM_SCP_PROTECTED_OUTPUT Поставщику защищенного содержимого требуются защищенные выходные данные.
WMDM_SCP_UNPROTECTED_OUTPUT Поставщику безопасного содержимого требуются незащищенные выходные данные.

[out] pdwMinRightsData

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

[out] pdwMinExamineData

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

[out] pdwMinDecideData

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

[in, out] abMac

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

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

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

Код возврата Описание
WMDM_E_MAC_CHECK_FAILED
Недопустимый код проверки подлинности сообщения.
E_INVALIDARG
Параметр является недопустимым указателем или указателем NULL .
E_FAIL
Произошла неизвестная ошибка.

Комментарии

Этот метод необходимо вызывать перед вызовом любого из других методов ISCPSecureQuery .

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

Если поставщик безопасного содержимого задает флаг WMDM_SCP_RIGHTS_DATA, windows Media диспетчер устройств отправляет объем данных, указанный в pdwMinRightsData, путем вызова ISCPSecureQuery::GetRights.

Если поставщик безопасного содержимого задает флаг WMDM_SCP_EXAMINE_DATA, диспетчер устройств Windows Media отправляет объем данных, указанный в pdwMinExamineData, путем вызова ISCPSecureQuery::ExamineData.

Если поставщик безопасного содержимого задает флаг WMDM_SCP_DECIDE_DATA, windows Media диспетчер устройств отправляет объем данных, указанный в pdwMinDecideData, путем вызова ISCPSecureQuery::MakeDecision.

Если флаги проверки не заданы, диспетчер устройств Windows Media больше не выполняет вызовы. Если флаги решения не заданы, windows Media диспетчер устройств по-прежнему вызывает ISCPSecureQuery::ExamineData.

Если этот метод не возвращает S_OK, то диспетчер устройств Windows Media не выполняет дальнейшие вызовы к этому поставщику защищенного содержимого.

Требования

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

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

Интерфейс ISCPSecureQuery