Método IWMDRMLicenseManagement::AcquireLicense
[La característica asociada a esta página, WINDOWS Media Format 11 SDK, es una característica heredada. Se ha reemplazado por lector de origen y escritor receptor. Lector de origen y escritor receptor se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use lector fuente y escritor receptor en lugar del SDK de Windows Media Format 11, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.
El método AcquireLicense adquiere de forma asincrónica una licencia de una dirección URL especificada.
Sintaxis
HRESULT AcquireLicense(
[in] BSTR bstrURL,
[in] BSTR bstrHeaderData,
[in] BSTR bstrActions,
[in] DWORD dwFlags,
[out] IUnknown **ppunkCancelationCookie
);
Parámetros
-
bstrURL [in]
-
Dirección URL del servidor de licencias desde el que adquirir la licencia. Pase NULL para que el método analice la dirección URL del encabezado de contenido.
-
bstrHeaderData [in]
-
Encabezado de contenido que se va a pasar al servidor de licencias. Si bstrURL es NULL, el método analizará la dirección URL de este encabezado. Si dwFlags se establece en WMDRM_ACQUIRE_LICENSE_LEGACY_NONSILENT, establezca este valor en el identificador de clave en lugar del encabezado de contenido completo.
-
bstrActions [in]
-
Cadena que contiene cero o más acciones para las que se va a solicitar permiso en la licencia. La cadena debe tener el siguiente formato:
Cada acción debe definirse dentro de un elemento ACTION. Los datos del elemento son la cadena de acción.
Todos los elementos ACTION deben estar contenidos dentro de un elemento ACTIONLIST.
Por ejemplo, la cadena para solicitar una licencia para reproducir contenido tiene el formato siguiente:
<ACTIONLIST><ACTION></ACTION></ACTIONLIST>
-
dwFlags [in]
-
Marcas de opción de adquisición de licencias. Establezca en una de las constantes de la tabla siguiente.
Constante Descripción WMDRM_ACQUIRE_LICENSE_SILENT La licencia se emitirá directamente a través de Internet sin ninguna confirmación de la aplicación cliente. WMDRM_ACQUIRE_LICENSE_NONSILENT El subsistema DRM creará una solicitud de licencia que se devolverá de forma asincrónica para su publicación en el servidor de licencias. WMDRM_ACQUIRE_LICENSE_LEGACY_NONSILENT Igual que WMDRM_ACQUIRE_LICENSE_NONSILENT, salvo que se creará un desafío de licencia de la versión 1 de DRM. -
ppunkCancelationCookie [out]
-
Puntero que recibe un puntero a la interfaz IUnknown de un objeto que identifica esta llamada asincrónica. Este puntero de interfaz se puede usar para cancelar la llamada asincrónica llamando al método IWMDRMEventGenerator::CancelAsyncOperation .
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 |
---|---|
|
El método se ha llevado a cabo de forma correcta. |
Observaciones
Este método se ejecuta de forma asincrónica. Devuelve inmediatamente después de llamar a y, a continuación, genera un evento MEWMDRMLicenseAcquisitionCompleted cuando se completa el procesamiento. Para las operaciones de adquisición de licencias no silenciosas, el valor del evento obtenido llamando a IMFMediaEvent::GetValue es un puntero IUnknown . Puede llamar al método QueryInterface de la interfaz IUnknown recuperada para obtener una instancia de la interfaz IWMDRMNonSilentLicenseAquisition .
Para obtener más información sobre el uso de los métodos asincrónicos de las API extendidas del cliente DRM de Windows Media, consulte Uso del modelo de eventos de Media Foundation.
Requisitos
Requisito | Value |
---|---|
Encabezado |
|
Biblioteca |
|