HWN_CLIENT_GET_STATE回呼函式 (hwnclx.h)
由客戶端驅動程序實作,以取得硬體通知元件狀態。 當使用者要求狀態資訊時,就會叫用它。
語法
HWN_CLIENT_GET_STATE HwnClientGetState;
NTSTATUS HwnClientGetState(
[in] PVOID Context,
[out] PVOID OutputBuffer,
[in] ULONG OutputBufferLength,
[in] PVOID InputBuffer,
[in] ULONG InputBufferLength,
[out] PULONG BytesRead
)
{...}
參數
[in] Context
用戶端驅動程式內容資訊的指標。 此記憶體空間可供客戶端驅動程式使用。 它是由 WdfDeviceCreate 配置為架構物件內容空間的一部分。 如需詳細資訊,請參閱 HWN_CLIENT_REGISTRATION_PACKET 和 Framework 物件內容空間。
[out] OutputBuffer
用於寫入硬體通知狀態的 OutputBufferLength 位元組緩衝區。 如果函式成功,緩衝區將包含包含一或多個HWN_SETTINGS結構的HWN_HEADER結構。
OutputBufferLength 必須夠大,才能包含所有要求的設定。 如需詳細資訊,請參閱<備註>。
[in] OutputBufferLength
OutputBuffer 的大小,以位元組為單位。
[in] InputBuffer
InputBufferLength 位元組的緩衝區,其中包含保存一或多個HWN_SETTINGS結構的HWN_HEADER,其中所要求硬體通知元件的標識符會儲存在 HwNId 欄位中。 這個緩衝區可以是NULL。
[in] InputBufferLength
InputBuffer 的大小,以位元組為單位。
[out] BytesRead
變數的指標,指出函式所讀取的位元組數目。
傳回值
如果作業成功,則傳回STATUS_SUCCESS。 否則,傳回適當的 NTSTATUS 錯誤碼。
備註
藉由設定 適當的HWN_CLIENT_REGISTRATION_PACKET 成員,然後呼叫 HwNRegisterClient 來註冊此回呼函式的實作。
-
如果 InputBuffer 為 NULL,輸出緩衝區將用來儲存 HWN_HEADER 結構,其中包含驅動程式所實作之硬體通知的所有設定。
硬體通知元件的設定會儲存在 HWN_SETTINGS 結構中。 HWN_HEADER 結構的 HwNSettingsInfo 字段包含HWN_SETTINGS結構的陣列。
- 如果 InputBuffer 不是 Null 且格式正確,則會包含具有一或多個HWN_SETTINGS結構的HWN_HEADER。 所要求硬體通知元件的標識符會儲存在HWN_SETTINGS結構的 HwNId 欄位中。 其餘設定應該是有效的設定或零。
- 如果 OutputBuffer 不夠大,無法包含所要求的所有設定,則此函式不應該將任何內容寫入 OutputBuffer。 此外,它應該將 BytesRead 設定為 0,並傳回錯誤。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 10 (版本 1709) |
最低支援的伺服器 | Windows Server 2016 |
目標平台 | Windows |
標頭 | hwnclx.h |
IRQL | PASSIVE_LEVEL |