spbTargetGetFileObject 函式 (spbcx.h)

SpbTargetGetFileObject 方法接受作為輸入參數的SPBTARGET句柄給開啟的目標裝置,並將WDFFILEOBJECT句柄傳回給這個目標。

語法

WDFFILEOBJECT SpbTargetGetFileObject(
  [in] SPBTARGET Target
);

參數

[in] Target

總線上目標裝置的 SPBTARGET 句柄。

傳回值

SpbTargetGetFileObject 會將 WDFFILEOBJECT 句柄傳回至總線上開啟的目標裝置。 如果與目標的連線已由 EvtSpbTargetDisconnect 事件回呼關閉,此方法會傳回 NULL。

備註

控制器驅動程式可以呼叫這個方法,以取得總線上開啟目標裝置的WDFFILEOBJECT句柄。 SPB 控制器驅動程式接著可以使用這個句柄做為需要這類句柄的 WDF 方法輸入參數。

SpbTargetGetFileObject 只有在關閉目標的 WDFFILEOBJECT 句柄關閉時,SPB 控制器驅動程式才會傳回 NULL,以延長其存留期。

如果連線已關閉,且SPB控制器驅動程序沒有SPBTARGET對象的參考,SBPTARGET句柄就不再有效。 將無效的句柄傳遞至 SpbTargetGetFileObject 會導致錯誤檢查。

SpbTargetGetFileObject 傳回 WDFFILEOBJECT 句柄之後,除非有另一個物件 (,否則目標連線仍會保持開啟狀態,例如,作用中的 I/O 要求) 保留 WDFFILEOBJECT 對象的參考,以避免意外關閉。 此方法最實用,因此,當目標連線保證為開啟時,最有可能呼叫此方法。 一般而言,這類呼叫會在 EvtSpbTargetConnectEvtSpbTargetDisconnect 回呼期間發生,以及在處理 I/O 要求期間發生。

規格需求

需求
最低支援的用戶端 從 Windows 8 開始提供。
目標平台 Universal
標頭 spbcx.h
程式庫 Spbcxstubs.lib
IRQL <= DISPATCH_LEVEL

另請參閱

EvtSpbTargetConnect

EvtSpbTargetDisconnect

SPBTARGET