Freigeben über


IAMCertifiedOutputProtection::KeyExchange-Methode (strmif.h)

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Die KeyExchange-Methode gibt das Zertifikat des Grafiktreibers zurück.

Syntax

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

Parameter

[out] pRandom

Empfängt eine 128-Bit-Zufallszahl, die vom Grafiktreiber generiert wird. Verwenden Sie diesen Wert in der IAMCertifiedOutputProtection::SessionSequenceStart-Methode .

[out] VarLenCertGH

Empfängt einen Zeiger auf einen Puffer, der das Zertifikat des Grafiktreibers enthält. Die -Methode weist den Arbeitsspeicher für den Puffer zu. Der Aufrufer muss den Arbeitsspeicher freigeben, indem er CoTaskMemFree aufruft.

[out] pdwLengthCertGH

Empfängt die Länge des in VarLenCertGH zurückgegebenen Puffers.

Rückgabewert

Gibt einen HRESULT-Wert zurück. Die folgenden Werte sind möglich.

Rückgabecode Beschreibung
S_OK
Erfolg.
E_UNEXPECTED
Ungültiger Zustand. Möglicherweise hat die Anwendung unerwartete Daten übergeben oder IAMCertifiedOutputProtection-Methoden in der falschen Reihenfolge aufgerufen. Wenn dieser Fehler auftritt, sollte die Anwendung den aktuellen instance der VMR freigeben.
VFW_E_NO_COPP_HW
Das Anzeigegerät unterstützt COPP nicht. oder der VMR hat noch keine Verbindung mit einem Anzeigegerät hergestellt.
ERROR_GRAPHICS_NO_MONITORS_CORRESPOND_TO_DISPLAY_DEVICE
Dem Anzeigegerät entsprechen keine Monitore. Dieser Fehler kann auftreten, wenn sich der Anzeigemodus ändert. oder der Benutzer schaltet einen Monitor aus oder entfernt einen Monitor.

Bemerkungen

Das Zertifikat des Grafiktreibers enthält den öffentlichen Verschlüsselungsschlüssel des Treibers.

Wenn diese Methode E_UNEXPECTED zurückgibt, sollte die Anwendung eine neue COPP-Sitzung erstellen, indem sie die VMR loslässt, eine neue instance des VMR erstellt und erneut für die neue instance aufruftKeyExchange.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP mit SP2 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile strmif.h (include Dshow.h)
Bibliothek Strmiids.lib

Siehe auch

IAMCertifiedOutputProtection-Schnittstelle

Verwenden des Certified Output Protection Protocol (COPP)