Freigeben über


Verwenden der DirectShow-Basisklassen

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]

Um die Basisklassen in DirectShow zu verwenden, müssen Sie die Basisklassenbibliothek erstellen und verknüpfen.

Die Basisklassenbibliothek wird als SDK-Beispiel im Microsoft Windows Software Development Kit (SDK) (https://go.microsoft.com/fwlink/p/?linkid=62332) bereitgestellt. Der genaue Speicherort hängt von der Version des SDK ab, das Sie installiert haben, aber der relative Pfad lautet:

(SDK-Beispielstamm)\DirectShow\BaseClasses

Header: Streams.h

Bibliothek: Das Beispiel erstellt Verkaufs- und Debugversionen der Bibliothek:

  • Einzelhandelsversion: Strmbase.lib
  • Debugversion: Strmbasd.lib.

Weitere Informationen zum Einrichten Ihrer Buildumgebung finden Sie unter Einrichten der Buildumgebung.

Präprozessorsymbole

Wenn Sie die Headerdatei Streams.h einschließen, haben die folgenden Präprozessorsymbole eine besondere Bedeutung:

  • PERF: Reserviert. Verwenden Sie dieses Präprozessorsymbol nicht.
  • VFWROBUST: Ermöglicht die Zeigervalidierung im Einzelhandel. Weitere Informationen finden Sie unter Zeigerüberprüfungsmakros. In Debugbuilds ist es nicht erforderlich, VFWROBUST zu definieren.

Hinweis

In Windows Vista und höher sind die Zeigerüberprüfungsmakros leer.