Freigeben über


CMediaControl-Klasse

[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.]

Hierarchie der cmediacontrol-Klasse

Die CMediaControl -Klasse bietet die Basisklassenbehandlung der IDispatch-Methoden des IMediaControl mit zwei Schnittstellen. Die Eigenschaften und Methoden der IMediaControl-Schnittstelle bleiben als reine virtuelle.

In der Regel ist der Filterdiagramm-Manager das einzige Objekt, das die IMediaControl-Schnittstelle implementiert. (Filter implementieren die IMediaFilter-Schnittstelle , die von IBaseFilter geerbt wird, um Steuerungsbefehle vom Filterdiagramm-Manager zu empfangen.) Daher ist diese Klassenbibliothek für das Filtern von Entwicklern nur begrenzt geeignet.

Die Memberfunktionen CMediaControl::GetIDsOfNames, CMediaControl::GetTypeInfo, CMediaControl::GetTypeInfoCount und CMediaControl::Invoke sind Standardimplementierungen der IDispatch-Methoden , die die CBaseDispatch-Klasse (und eine Typbibliothek) verwenden, um die Befehle zu analysieren und an die reinen virtuellen Methoden der IMediaControl-Schnittstelle zu übergeben.

Die in control.odl definierten IMediaControl-Methoden werden als reine virtuelle Methoden belassen.

Elementfunktionen Beschreibung
CMediaControl Erstellt ein CMediaControl-Objekt .
IDispatch-Methoden Beschreibung
GetIDsOfNames Ordnet einen einzelnen Member und einen optionalen Satz von Parametern einem entsprechenden Satz ganzzahliger Verteilerbezeichner (DISPIDs) zu, die bei nachfolgenden Aufrufen der CMediaControl::Invoke-Methode verwendet werden können.
GetTypeInfo Ruft ein Typinformationsobjekt ab, das die Typinformationen für eine Schnittstelle abrufen kann.
GetTypeInfoCount Ruft die Anzahl der Typinformationsschnittstellen ab, die von einem Objekt bereitgestellt werden.
Invoke Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.