Share via


Acquisizione di licenze non invisibile all'utente

[La funzionalità associata a questa pagina, Windows Media Format 11 SDK, è una funzionalità legacy. È stata sostituita da Lettore di origine e Writer sink. Lettore di origine e Writer sink sono stati ottimizzati per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi Lettore di origine e Writer sink anziché Windows Media Format 11 SDK, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

L'acquisizione di licenze non invisibile all'utente finale consente al provider di licenze di interagire con l'utente finale tramite una pagina Web, come passaggio intermedio nel processo di acquisizione delle licenze. L'acquisizione di licenze non invisibile all'utente viene avviata in risposta a un utente che tenta di accedere al contenuto protetto.

Per eseguire l'acquisizione di licenze non invisibile all'utente, seguire questa procedura:

  1. Chiamare il metodo IWMDRMLicenseManagement::AcquireLicense . Passare l'intestazione DRM dal file protetto come parametro bstrHeaderData . Specificare i diritti che si desidera concedere alla licenza nel parametro bstrActions . Infine, impostare il parametro dwFlags su WMDRM_ACQUIRE_LICENSE_NONSILENT.
  2. Eventi trap per l'interfaccia IWMDRMLicenseManagement . Quando si riceve l'evento MEWMDRMLicenseAcquisitionCompleted , ottenere il valore associato chiamando FMMediaEvent::GetValue. Il valore deve essere di tipo VT_UNKNOWN, un puntatore a un'interfaccia IUnknown .
  3. Chiamare il metodo QueryInterface dell'interfaccia IUnknown recuperato nel passaggio 2 per ottenere l'interfaccia IWMDRMNonSilentLicenseAquisition .
  4. Chiamare IWMDRMNonSilentLicenseAquisition::GetChallenge per recuperare la richiesta di licenza. Chiamare anche IWMDRMNonSilentLicenseAquisition::GetURL se non si ha già l'URL del server di licenza.
  5. Inviare la richiesta alla pagina Web specificata dall'URL.

Acquisizione di licenze

Uso del modello di evento Media Foundation