WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE函式 (wdfiotarget.h)
[僅適用於 UMDF]
WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE函式會初始化驅動程式的WDF_IO_TARGET_OPEN_PARAMS結構,讓驅動程式可以藉由指定檔名來開啟 I/O 目標。
語法
void WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE(
[out] PWDF_IO_TARGET_OPEN_PARAMS Params,
[in, optional] PCUNICODE_STRING FileName
);
參數
[out] Params
驅動程式配置的 WDF_IO_TARGET_OPEN_PARAMS 結構的指標,函式會初始化此結構。
[in, optional] FileName
WDF_IO_TARGET_OPEN_PARAMS 結構的 FileName 成員值。 除非較低的目標支援裝置命名空間存取,否則大部分驅動程式都會在這裡指定NULL。
傳回值
無
備註
WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE函式會零指定的WDF_IO_TARGET_OPEN_PARAMS結構,並設定其 Size 成員。 它也會將結構的 Type 成員設定為 WdfIoTargetOpenLocalTargetByFile ,並在驅動程式提供檔名時設定 FileName 成員。
驅動程式可以藉由呼叫 WdfIoTargetClose 明確地關閉 I/O 目標。 如果驅動程式未明確關閉目標,架構會在移除裝置時自動關閉目標, (I/O 目標預設為裝置上層) 。
範例
下列程式代碼範例示範 UMDF 驅動程式如何使用檔案對象開啟本機目標,如 WDF_IO_TARGET_OPEN_TYPE所述:
WDF_OBJECT_ATTRIBUTES ioTargetAttrib;
WDFIOTARGET ioTarget;
WDF_IO_TARGET_OPEN_PARAMS openParams;
//
// Create target
//
WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&ioTargetAttrib, TARGET_DEVICE_INFO);
status = WdfIoTargetCreate(device, &ioTargetAttrib, &ioTarget);
if (!NT_SUCCESS(status)) {
return status;
}
//
// Open target
//
WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE(&openParams, NULL);
status = WdfIoTargetOpen(ioTarget, &openParams);
if (!NT_SUCCESS(status)) {
WdfObjectDelete(ioTarget);
return status;
}
//
// create a request
//
//
// Format the request for the above target
//
//
// Send request to above target
//
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8.1 |
目標平台 | Universal |
最低UMDF版本 | 2.0 |
標頭 | wdfiotarget.h (包含 Wdf.h) |
IRQL | 任何層級 |