IWMDRMLicenseManagement :: AcquireLicense, méthode

La méthode AcquireLicense acquiert de manière asynchrone une licence à partir d’une URL spécifiée.

Syntaxe

HRESULT AcquireLicense(
  [in]  BSTR     bstrURL,
  [in]  BSTR     bstrHeaderData,
  [in]  BSTR     bstrActions,
  [in]  DWORD    dwFlags,
  [out] IUnknown **ppunkCancelationCookie
);

Paramètres

du bstrURL [ dans]

URL du serveur de licences à partir duquel acquérir la licence. Transmettez la valeur null pour que la méthode analyse l’URL à partir de l’en-tête de contenu.

bstrHeaderData [ dans]

En-tête de contenu à transmettre au serveur de licences. Si du bstrURL a la valeur null, la méthode analyse l’URL à partir de cet en-tête. Si dwFlags est défini sur WMDRM _ Acquire la _ licence _ héritée _ non silencieuse, définissez cette valeur sur l’ID de clé au lieu de l’en-tête de contenu entier.

bstrActions [ dans]

Chaîne contenant zéro, une ou plusieurs actions pour lesquelles une autorisation doit être demandée dans la licence. La chaîne doit être mise en forme de la façon suivante :

  • Chaque action doit être définie dans un élément ACTION. Les données de l’élément sont la chaîne d’action.

  • Tous les éléments ACTION doivent être contenus dans un élément ACTIONLIST.

    Par exemple, la chaîne permettant de demander une licence pour lire du contenu est au format suivant :

    <ACTIONLIST><ACTION></ACTION></ACTIONLIST>
    

dwFlags [ dans]

Indicateurs d’option d’acquisition de licence. Définissez l’une des constantes dans le tableau suivant.

Constante Description
licence d’acquisition WMDRM en _ _ _ mode silencieux La licence sera émise directement sur Internet sans aucune confirmation de la part de l’application cliente.
licence d’acquisition WMDRM sans _ _ _ silence Le sous-système DRM crée une demande de licence qui est renvoyée de manière asynchrone pour la publication sur le serveur de licences.
l’héritage de la licence d’acquisition WMDRM n’est pas _ _ _ _ silencieux Identique à la _ licence d’acquisition WMDRM sans _ _ silence, sauf qu’une demande de licence DRM version 1 sera créée.

ppunkCancelationCookie [ à]

Pointeur qui reçoit un pointeur vers l’interface IUnknown d’un objet qui identifie cet appel asynchrone. Ce pointeur d’interface peut être utilisé pour annuler l’appel asynchrone en appelant la méthode IWMDRMEventGenerator :: CancelAsyncOperation .

Valeur retournée

Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.

Code de retour Description
_OK
S_OK

Remarques

Cette méthode s’exécute de façon asynchrone. Elle retourne immédiatement après l’appel de, puis génère un événement MEWMDRMLicenseAcquisitionCompleted lorsque le traitement est terminé. Pour les opérations d’acquisition de licence non silencieuses, la valeur de l’événement obtenu en appelant IMFMediaEvent :: GetValue est un pointeur IUnknown . Vous pouvez appeler la méthode QueryInterface de l’interface IUnknown Récupérée pour récupérer une instance de l’interface IWMDRMNonSilentLicenseAquisition .

pour plus d’informations sur l’utilisation des méthodes asynchrones des api étendues du Client Media DRM Windows, consultez utilisation du modèle d’événement Media Foundation.

Configuration requise

Condition requise Valeur
En-tête
Wmdrmsdk. h
Bibliothèque
Wmdrmsdk. lib

Voir aussi

Interface IWMDRMLicenseManagement

Acquisition de licence en mode silencieux