共用方式為


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_PACKETFramework 物件內容空間

[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

另請參閱

硬體通知支援

硬體通知參考