Compartir a través de


Método ISCPSecureQuery2::MakeDecision2 (mswmdm.h)

El método MakeDecision2 determina si el proveedor de contenido seguro es responsable del contenido examinando los datos que Windows Media Administrador de dispositivos pasa a este método. Este método proporciona dos parámetros de salida para el control de errores, una ubicación predeterminada para actualizar los componentes revocados y una marca de bits que indica qué componentes se han revocado.

Sintaxis

HRESULT MakeDecision2(
  [in]      UINT                fuFlags,
  [in]      BYTE                *pData,
  [in]      DWORD               dwSize,
  [in]      DWORD               dwAppSec,
  [in]      BYTE                *pbSPSessionKey,
  [in]      DWORD               dwSessionKeyLen,
  [in]      IMDSPStorageGlobals *pStorageGlobals,
  [in]      BYTE                *pAppCertApp,
  [in]      DWORD               dwAppCertAppLen,
  [in]      BYTE                *pAppCertSP,
  [in]      DWORD               dwAppCertSPLen,
  [in, out] LPWSTR              *pszRevocationURL,
  [in, out] DWORD               *pdwRevocationURLLen,
  [out]     DWORD               *pdwRevocationBitFlag,
  [in, out] ULONGLONG           *pqwFileSize,
  [in]      IUnknown            *pUnknown,
  [out]     ISCPSecureExchange  **ppExchange,
  [in, out] BYTE [8]            abMac
);

Parámetros

[in] fuFlags

Marcas que describen los datos ofrecidos al proveedor de contenido seguro para tomar decisiones. Este parámetro debe incluirse en el código de autenticación del mensaje de entrada. Una o varias de las marcas siguientes se pueden combinar mediante un OR bit a bit.

Marca Descripción
WMDM_SCP_DECIDE_DATA El parámetro pData apunta a los datos que se van a examinar.
WMDM_MODE_TRANSFER_PROTECTED Los datos del objeto de salida de la interfaz ISCPSecureExchange deben estar protegidos. Si Windows Media Administrador de dispositivos establece ninguna o ambas marcas de modo, Windows Media Digital Rights Manager decide si los datos del objeto de salida de la interfaz ISCPSecureExchange deben protegerse o desprotegerse.
WMDM_MODE_TRANSFER_UNPROTECTED Los datos del objeto de salida de la interfaz ISCPSecureExchange deben estar desprotegidos. Si Windows Media Administrador de dispositivos establece ninguna o ambas marcas de modo, Windows Media Digital Rights Manager decide si los datos del objeto de salida de la interfaz ISCPSecureExchange deben protegerse o desprotegerse.

[in] pData

Puntero a un objeto de datos que contiene los datos que se van a examinar. Este parámetro debe incluirse en el código de autenticación del mensaje de entrada y debe cifrarse.

[in] dwSize

DWORD que contiene el tamaño de los datos del archivo.

[in] dwAppSec

DWORD que contiene la longitud, en bytes, del miembro dwAppSec de la estructura WMDMRIGHTS del proveedor de servicios y del proveedor de contenido seguro que se va a examinar. 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

DWORD que contiene la longitud de la clave de sesión.

[in] pStorageGlobals

Puntero a la interfaz IWMDMStorageGlobals en el almacenamiento raíz del medio o dispositivo hacia o desde el que se transfiere el archivo. Este parámetro debe incluirse en el código de autenticación del mensaje de entrada.

[in] pAppCertApp

Puntero a un certificado de aplicación del objeto de aplicación.

[in] dwAppCertAppLen

DWORD que contiene la longitud, en bytes, del certificado de aplicación.

[in] pAppCertSP

Puntero al certificado de aplicación del objeto del proveedor de servicios.

[in] dwAppCertSPLen

DWORD que contiene la longitud, en bytes, del certificado de aplicación.

[in, out] pszRevocationURL

Puntero a un búfer para contener la dirección URL de revocación.

[in, out] pdwRevocationURLLen

Puntero a un DWORD que contiene el tamaño del búfer rpszRevocationURL en bytes.

[out] pdwRevocationBitFlag

Puntero a un DWORD que contiene la marca de bits de revocación. El valor de marca será cero o uno o varios de los siguientes nombres de marca combinados mediante un OR bit a bit.

Valor Descripción
WMDM_WMDM_REVOKED Windows Media Administrador de dispositivos se ha revocado.
WMDM_APP_REVOKED La aplicación se ha revocado y debe actualizarse antes de que se pueda transferir cualquier contenido protegido con DRM.
WMDM_SP_REVOKED El proveedor de servicios se ha revocado y debe actualizarse antes de que cualquier contenido protegido con DRM se pueda transferir a él.
WMDM_SCP_REVOKED El proveedor de contenido seguro se ha revocado y debe actualizarse antes de que se pueda transferir cualquier contenido protegido con DRM.

[in, out] pqwFileSize

Puntero a un QWORD que contiene el tamaño del archivo. El proveedor de contenido seguro es responsable de actualizar este valor o establecerlo en cero si el tamaño del archivo de destino no se puede determinar en este momento.

[in] pUnknown

Puntero a una interfaz desconocida desde la aplicación.

[out] ppExchange

Puntero a un objeto de intercambio que recibe la interfaz de intercambio.

[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_REVOKED
Se ha revocado el certificado de aplicación que usa el proveedor de contenido seguro para comunicarse con el cliente DRM.

Requisitos

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

Consulte también

Interfaz ISCPSecureQuery

Interfaz ISCPSecureQuery2

ISCPSecureQuery::MakeDecision