WdfRequestSetInformation 函式 (wdfrequest.h)
[適用於 KMDF 和 UMDF]
WdfRequestSetInformation 方法會設定指定 I/O 要求的完成狀態資訊。
語法
void WdfRequestSetInformation(
[in] WDFREQUEST Request,
[in] ULONG_PTR Information
);
參數
[in] Request
架構要求物件的句柄。
[in] Information
要求之驅動程式定義的完成狀態資訊。
傳回值
沒有
言論
如果驅動程式提供無效的物件句柄,就會發生錯誤檢查。
架構型驅動程式會使用 WdfRequestSetInformation 方法來提供與 I/O 要求完成相關聯的驅動程式特定資訊,例如傳輸的位元組數目。 其他驅動程式可以呼叫 WdfRequestGetInformation來取得這項資訊。
驅動程式也可以呼叫 WdfRequestCompleteWithInformation來指定完成狀態資訊。
如需 WdfRequestSetInformation的詳細資訊,請參閱 完成 I/O 要求。
例子
下列程式代碼範例會根據 EvtIoDeviceControl 回呼函式所接收的 I/O 控件程式代碼值,設定要求完成資訊。
VOID
MyEvtIoDeviceControl(
IN WDFQUEUE Queue,
IN WDFREQUEST Request,
IN size_t OutputBufferLength,
IN size_t InputBufferLength,
IN ULONG IoControlCode
)
{
switch (IoControlCode) {
case MY_IOCTL_CODE_1:
WdfRequestSetInformation(
Request,
VALUE_1
);
status = STATUS_SUCCESS;
break;
case MY_IOCTL_CODE_2:
WdfRequestSetInformation(
Request,
VALUE_2
);
status = STATUS_SUCCESS;
break;
case MY_IOCTL_CODE_3:
WdfRequestSetInformation(
Request,
VALUE_3
);
status = STATUS_SUCCESS;
break;
default:
status = STATUS_INVALID_DEVICE_REQUEST;
break;
}
WdfRequestComplete(
Request,
status
);
}
要求
要求 | 價值 |
---|---|
目標平臺 | 普遍 |
最低 KMDF 版本 | 1.0 |
最低 UMDF 版本 | 2.0 |
標頭 | wdfrequest.h (包括 Wdf.h) |
連結庫 | Wdf01000.sys (KMDF):WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
DDI 合規性規則 | DriverCreate(kmdf),InvalidReqAccess(kmdf),InvalidReqAccessLocal(kmdf),KmdfIrql(kmdf),KmdfIrql2(kmdf),KmdfIrqlExplicit(kmdf) |