KsPinGetConnectedPinInterface-Funktion (ks.h)
Die KsPinGetConnectedPinInterface-Funktion fragt den Pin ab, an den Pin- für eine COM-Formatschnittstelle verbunden ist.
Syntax
KSDDKAPI NTSTATUS KsPinGetConnectedPinInterface(
[in] PKSPIN Pin,
[in] const GUID *InterfaceId,
[out] PVOID *Interface
);
Parameter
[in] Pin
Ein Zeiger auf eine KSPIN--Struktur. AVStream fragt den mit Pin verbundenen Pin für die angeforderte Schnittstelle ab.
[in] InterfaceId
Ein Zeiger auf die GUID, die den zu erhaltenden Schnittstellentyp angibt. Für diese Schnittstelle wird automatisch ein QueryInterface-aufruf ausgeführt.
[out] Interface
Ein Zeiger auf einen Zeiger, den AVStream auf die Position der COM-Schnittstelle festlegt.
Rückgabewert
KsPinGetConnectedPinInterface gibt STATUS_SUCCESS oder STATUS_NOINTERFACE zurück. Weitere Informationen finden Sie weiter unten.
Bemerkungen
Interface verfügt über eine entsprechende Referenzanzahl, und müssen vom Aufrufer wie in COM freigegeben werden.
Diese Routine gibt STATUS_SUCCESS zurück, wenn die Schnittstelle auf dem verbundenen Pin oder im AVStream thunk vorhanden ist. Wenn STATUS_SUCCESS zurückgegeben wird, legt AVStream den Schnittstellenzeiger in *Interfaceein. Andernfalls gibt die Routine STATUS_NOINTERFACE zurück. Dies entspricht dem COM-HRESULT-E_NOINTERFACE.
Standardmäßig unterstützen Objekte die IUnknown--Schnittstelle und die IKsControl--Schnittstelle. Wenn es sich bei dem verbundenen Pin um einen AVStream-Pin handelt, sind die Abfrage und der zurückgegebene Schnittstellenzeiger direkte Aufrufe an den anderen Treiber. Wenn der verbundene Pin dagegen nicht zu einem AVStream-Treiber gehört, wird ein Thunk erstellt, der IKsControl-Unterstützung über synchrone Aufrufe des Treibers mit dem verbundenen Pin bereitstellt, wobei IoCallDriver-verwendet wird.
Die am häufigsten verwendete Verwendung von KsPinGetConnectedPinInterface besteht darin, die Steuerungsschnittstelle für den verbundenen Pin zu erhalten. Diese Steuerelementschnittstelle kann für Eigenschafts-, Methoden- oder Ereignisaufrufe an den verbundenen Pin verwendet werden, oder sie können Schnittstellen abfragen, die auf dem verbundenen Pin aggregiert wurden. Wenn es sich bei dem verbundenen Pin um einen AVStream-Pin handelt; AVStream bietet nur Thunking für IKsControl- und IUnknown- für Nicht-AVStream-Pins.
Die Thunk wird nur erstellt, wenn Pin eine Quellnadel ist; Die Aufrufe funktionieren daher nur, wenn eine oder mehrere der folgenden Werte zutreffen:
- Die Verbindung ist intra-AVStream (Pinangeschlossenen Pin ist ein AVStream-Pin).
- Pin ist eine Quellnadel.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar in Microsoft Windows XP und höheren Betriebssystemen und DirectX 8.0 und höher directX-Versionen. |
Zielplattform- | Universal |
Header- | ks.h (enthalten Ks.h) |
Library | Ks.lib |
IRQL- | PASSIVE_LEVEL |
Siehe auch
KsPinGetConnectedFilterInterface