IWMDRMDeviceApp::AcquireDeviceData (método)

El método AcquireDeviceData inicializa o restablece un reloj seguro del dispositivo.

Sintaxis

HRESULT AcquireDeviceData(
  [in]  IWMDMDevice    *pDevice,
  [in]  IWMDMProgress3 *pProgressCallback,
  [in]  DWORD          dwFlags,
  [out] DWORD          *pdwStatus
);

Parámetros

pDevice [in]

Puntero a una interfaz IWMDMDevice para el dispositivo que notificará los datos de medición.

pProgressCallback [in]

Devolución de llamada de progreso a través de la cual la aplicación puede realizar un seguimiento del progreso del evento o cancelar el evento. El progreso se identifica mediante el parámetro EventId de los métodos IWMDMProgress3 .

dwFlags [in]

Or lógico de una o ambas marcas siguientes, especificando qué acción se va a realizar. Este valor se recupera del parámetro pdwStatus de IWMDRMDeviceApp::QueryDeviceStatus o IWMDRMDeviceApp2::QueryDeviceStatus2. Puede usar la marca pdwStatus directamente.

Marca Descripción
WMDRM_DEVICE_NEEDCLOCK Adquiera un reloj de un servidor de reloj seguro.
WMDRM_DEVICE_REFRESHCLOCK Actualice el reloj desde un servidor de reloj seguro.

pdwStatus [out]

Uno de los siguientes valores DWORD especificando el estado devuelto por el dispositivo.

Estado Descripción
0 No se admite la acción.
1 No se pudo adquirir el reloj seguro del dispositivo desde el servicio.
2 No se pudo establecer el reloj seguro del dispositivo.
3 Se estableció el reloj seguro del dispositivo.

Valor devuelto

El método devuelve un valor HRESULT. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros.

Código devuelto Descripción
S_OK
El método se ha llevado a cabo de forma correcta.
DRM_E_INVALIDARG
Uno o varios argumentos no son válidos.
NS_E_DEVICE_NOT_WMDRM_DEVICE
El dispositivo especificado no es un dispositivo compatible con DRM de Windows Media.
NS_E_DRM_UNABLE_TO_GET_SECURE_CLOCK
No se pudo recuperar el desafío de reloj seguro del dispositivo o no se pudo recuperar la dirección URL del reloj seguro del desafío.
NS_E_DRM_UNABLE_TO_GET_SECURE_CLOCK_FROM_SERVER
No se pudo recuperar la respuesta de reloj segura del servidor de reloj seguro.
NS_E_DRM_UNABLE_TO_SET_SECURE_CLOCK
No se pudo enviar el desafío de reloj seguro al dispositivo o el dispositivo no pudo establecer el reloj.

Comentarios

Se trata de un método asincrónico; El dispositivo debe esperar la devolución de llamada IWMDMProgress::End para esta operación antes de intentar reproducir cualquier contenido con licencia.

Una aplicación puede aprender si el dispositivo debe tener el restablecimiento del reloj o actualizar llamando a IWMDRMDeviceApp::QueryDeviceStatus o IWMDRMDeviceApp2::QueryDeviceStatus2.

La aplicación debe tener una conexión a Internet para permitir que adquiera o restablezca un reloj seguro.

Requisitos

Requisito Value
Encabezado
WMDRMDeviceApp.h (también requiere Wmdrmdeviceapp_i.c, compilado a partir de WMDRMDeviceApp.idl)
Biblioteca
Mssachlp.lib

Consulte también

Control del contenido protegido en la aplicación

IWMDMDevice (Interfaz)

Interfaz IWMDMProgress3

IWMDRMDeviceApp (Interfaz)