Freigeben über


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.
Andernfalls wird STATUS_UNSUCCESSFUL zurückgegeben.

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

IKsControl-

IKsReferenceClock

KsFilterGetOuterUnknown

KsGetOuterUnknown-

KsPinGetConnectedFilterInterface

KsPinGetReferenceClockInterface

KsRegisterAggregatedClientUnknown