WdfUsbTargetPipeWdmGetPipeHandle 函式 (wdfusb.h)
[僅適用於 KMDF]
WdfUsbTargetPipeWdmGetPipeHandle 方法會傳回與指定之架構管道對象相關聯的USBD_PIPE_HANDLE型別句柄。
語法
USBD_PIPE_HANDLE WdfUsbTargetPipeWdmGetPipeHandle(
[in] WDFUSBPIPE UsbPipe
);
參數
[in] UsbPipe
呼叫 WdfUsbInterfaceGetConfiguredPipe 取得之架構管道物件的句柄。
傳回值
WdfUsbTargetPipeWdmGetPipeHandle 會傳回USBD_PIPE_HANDLE類型句柄。
如果驅動程式提供無效的物件句柄,就會發生錯誤檢查。
備註
架構型驅動程式只有在建立需要管道句柄的 URB 時,才需要取得USBD_PIPE_HANDLE型別的句柄。
驅動程式可以在呼叫 WdfUsbTargetDeviceSelectConfig 之後呼叫 WdfUsbTargetPipeWdmGetPipeHandle 方法。 WdfUsbTargetPipeWdmGetPipeHandle 傳回的USBD_PIPE_HANDLE類型句柄有效,直到驅動程式再次呼叫 WdfUsbTargetDeviceSelectConfig、驅動程式呼叫 WdfUsbInterfaceSelectSetting,或刪除架構管道對象為止。 如果驅動程式為架構管道物件提供 EvtCleanupCallback 函式,而且驅動程式在呼叫 WdfUsbTargetDeviceSelectConfig 之前刪除物件,或再次呼叫 WdfUsbInterfaceSelectSetting,則句柄會有效,直到物件的 EvtCleanupCallback 函式傳回為止。
如需 WdfUsbTargetPipeWdmGetPipeHandle 方法和 USB I/O 目標的詳細資訊,請參閱 USB I/O 目標。
範例
下列程式代碼範例會取得指定管道的USBD_PIPE_HANDLE型別句柄。
USBD_PIPE_HANDLE usbdPipeHandle;
usbdPipeHandle = WdfUsbTargetPipeWdmGetPipeHandle(UsbPipe);
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
最小 KMDF 版本 | 1.0 |
標頭 | wdfusb.h (包含 Wdfusb.h) |
程式庫 | Wdf01000.sys (請參閱 Framework Library Versioning.) |
IRQL | <=DISPATCH_LEVEL |
DDI 合規性規則 | DriverCreate (kmdf) , KmdfIrql (kmdf) , KmdfIrql2 (kmdf) , KmdfIrqlExplicit (kmdf) , UsbKmdfIrql (kmdf) 、 UsbKmdfIrql2 (kmdf) 、UsbKmdfIrqlExplicit (kmdf) |