Metodo IAMCertifiedOutputProtection::KeyExchange (strmif.h)

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation anziché DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Il metodo KeyExchange restituisce il certificato del driver grafico.

Sintassi

HRESULT KeyExchange(
  [out] GUID  *pRandom,
  [out] BYTE  **VarLenCertGH,
  [out] DWORD *pdwLengthCertGH
);

Parametri

[out] pRandom

Riceve un numero casuale a 128 bit generato dal driver grafico. Utilizzare questo valore nel metodo IAMCertifiedOutputProtection::SessionSequenceStart .

[out] VarLenCertGH

Riceve un puntatore a un buffer contenente il certificato del driver grafico. Il metodo alloca la memoria per il buffer. Il chiamante deve rilasciare la memoria chiamando CoTaskMemFree.

[out] pdwLengthCertGH

Riceve la lunghezza del buffer restituito in VarLenCertGH.

Valore restituito

Restituisce un valore HRESULT. Di seguito sono indicati alcuni valori possibili.

Codice restituito Descrizione
S_OK
Operazione completata.
E_UNEXPECTED
Stato non valido. Possibilmente l'applicazione ha passato dati imprevisti o denominati metodi IAMCertifiedOutputProtection nell'ordine errato. Se si verifica questo errore, l'applicazione deve rilasciare l'istanza corrente di VMR.
VFW_E_NO_COPP_HW
Il dispositivo di visualizzazione non supporta COPP; o vmR non è ancora connesso a un dispositivo visualizzato.
ERROR_GRAPHICS_NO_MONITORS_CORRESPOND_TO_DISPLAY_DEVICE
Nessun monitor corrisponde al dispositivo di visualizzazione. Questo errore può verificarsi se la modalità di visualizzazione cambia; o l'utente disattiva un monitoraggio o rimuove un monitoraggio.

Commenti

Il certificato del driver grafico contiene la chiave di crittografia pubblica del driver.

Se questo metodo restituisce E_UNEXPECTED, l'applicazione deve creare una nuova sessione COPP rilasciando vmR, creando una nuova istanza di VMR e chiamando KeyExchange di nuovo nella nuova istanza.

Requisiti

   
Client minimo supportato Windows XP con SP2 [solo app desktop]
Server minimo supportato Windows Server 2003 R2 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione strmif.h (include Dshow.h)
Libreria Strmiids.lib

Vedi anche

Interfaccia IAMCertifiedOutputProtection

Uso del protocollo COPP (Certified Output Protection Protocol)