Partager via


Acquisition de licences non silencieuses

[La fonctionnalité associée à cette page, le Kit de développement logiciel (SDK) Windows Media Format 11, est une fonctionnalité héritée. Il a été remplacé par lecteur source et enregistreur récepteur. Le lecteur source et l’enregistreur récepteur ont été optimisés pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise le lecteur source et l’enregistreur récepteur au lieu du Kit de développement logiciel (SDK) Windows Media Format 11, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

L’acquisition de licences non silencieuses permet au fournisseur de licence d’interagir avec l’utilisateur final via une page web, comme étape intermédiaire du processus d’acquisition de licence. L’acquisition de licences non silencieuses est lancée en réponse à un utilisateur qui tente d’accéder au contenu protégé.

Pour effectuer l’acquisition de licences non silencieuses, procédez comme suit :

  1. Appelez la méthode IWMDRMLicenseManagement::AcquireLicense . Transmettez l’en-tête DRM du fichier protégé en tant que paramètre bstrHeaderData . Spécifiez les droits que vous souhaitez accorder à la licence dans le paramètre bstrActions . Enfin, définissez le paramètre dwFlags sur WMDRM_ACQUIRE_LICENSE_NONSILENT.
  2. Intercepter les événements pour l’interface IWMDRMLicenseManagement . Lorsque vous recevez l’événement MEWMDRMLicenseAcquisitionCompleted , obtenez sa valeur associée en appelant IMFMediaEvent::GetValue. La valeur doit être de type VT_UNKNOWN, pointeur vers une interface IUnknown .
  3. Appelez la méthode QueryInterface de l’interface IUnknown récupérée à l’étape 2 pour obtenir l’interface IWMDRMNonSilentLicenseAquisition .
  4. Appelez IWMDRMNonSilentLicenseAquisition::GetChallenge pour récupérer le défi de licence. Appelez également IWMDRMNonSilentLicenseAquisition::GetURL si vous n’avez pas déjà l’URL du serveur de licences.
  5. Envoyez le défi à la page Web spécifiée par l’URL.

Acquisition de licences

Utilisation du modèle d’événement Media Foundation