KsPinGetConnectedPinInterface 函式 (ks.h)

KsPinGetConnectedPinInterface 函式會查詢 PIN 連線至 COM 樣式介面的選。

語法

KSDDKAPI NTSTATUS KsPinGetConnectedPinInterface(
  [in]  PKSPIN     Pin,
  [in]  const GUID *InterfaceId,
  [out] PVOID      *Interface
);

參數

[in] Pin

KSPIN 結構的指標。 AVStream 會查詢已連線至所要求介面之 Pin 的針腳

[in] InterfaceId

GUID 的指標,指定要取得的介面類型。 此介面會自動執行 QueryInterface 呼叫。

[out] Interface

AVStream 設定為 COM 介面位置之指標的指標。

傳回值

KsPinGetConnectedPinInterface 會傳回STATUS_SUCCESS或STATUS_NOINTERFACE。 請參閱下面的詳細資料。

備註

介面 具有對應的參考計數, 而且必須由 呼叫端在 COM 中釋出。

如果介面存在於連線的針腳或AVStream Thunk上,此例程會傳回STATUS_SUCCESS。 如果傳回STATUS_SUCCESS,AVStream 會將介面指標儲存至 *介面。 否則,例程會傳回STATUS_NOINTERFACE。 這會對應至 COM HRESULT E_NOINTERFACE。

根據預設,對象支援 IUnknown 介面和 IKsControl 介面。 如果連接的針腳是AVStream針腳,則查詢和傳回的介面指標會直接呼叫其他驅動程式。 另一方面,如果連線的針腳不屬於AVStream驅動程式,則會建立 thunk,透過使用IoCallDriver同步呼叫包含連線針腳的驅動程式,提供 IKsControl 支援。

KsPinGetConnectedPinInterface 最常見的用法是取得連接針腳的控制介面。 這個控件介面可用於屬性、方法或事件呼叫連線的針腳,也可以查詢已匯總至連接針腳的介面。 如果連線的針腳是AVStream針腳;AVStream 僅針對非 AVStream 針腳提供 IKsControlIUnknown 的 Thunking。

只有在 Pin 是來源針 時,才會建立 Thunk;因此,只有在下列一或多個是 true 時,呼叫才會運作:

  • 連線是AVStream內部 (腳的聯機針腳是AVStream針腳) 。
  • 針腳 是來源針腳。
否則會傳回STATUS_UNSUCCESSFUL。

規格需求

需求
最低支援的用戶端 適用於 Microsoft Windows XP 和更新版本的作業系統和 DirectX 8.0 和更新版本的 DirectX 版本。
目標平台 Universal
標頭 ks.h (包含 Ks.h)
程式庫 Ks.lib
IRQL PASSIVE_LEVEL

另請參閱

IKsControl

IKsReferenceClock

KsFilterGetOuterUnknown

KsGetOuterUnknown

KsPinGetConnectedFilterInterface

KsPinGetReferenceClockInterface

KsRegisterAggregatedClientUnknown