RegisterRawInputDevices 函式 (winuser.h)

註冊提供原始輸入數據的裝置。

語法

BOOL RegisterRawInputDevices(
  [in] PCRAWINPUTDEVICE pRawInputDevices,
  [in] UINT             uiNumDevices,
  [in] UINT             cbSize
);

參數

[in] pRawInputDevices

類型: PCRAWINPUTDEVICE

RAWINPUTDEVICE 結構的數位,表示提供原始輸入的裝置。

[in] uiNumDevices

類型: UINT

pRawInputDevices 所指向的RAWINPUTDEVICE結構數目。

[in] cbSize

類型: UINT

RAWINPUTDEVICE 結構的大小,以位元組為單位。

傳回值

類型: BOOL

如果函式成功,則為TRUE;否則為 FALSE。 如果函式失敗,請呼叫 GetLastError 以取得詳細資訊。

備註

若要接收 WM_INPUT 訊息,應用程式必須先使用 RegisterRawInputDevices 註冊原始輸入裝置。 根據預設,應用程式不會接收原始輸入。

若要接收 WM_INPUT_DEVICE_CHANGE 訊息,應用程式必須針對由 RAWINPUTDEVICE 結構之usUsagePage和usUsage字段所指定的每個裝置類別指定RIDEV_DEVNOTIFY旗標。 根據預設,應用程式不會收到原始輸入裝置抵達和移除 的WM_INPUT_DEVICE_CHANGE 通知。

如果 RAWINPUTDEVICE 結構已設定RIDEV_REMOVE旗標,且 hwndTarget 參數未設定為 NULL,則參數驗證將會失敗。

每個原始輸入裝置類別只能註冊一個視窗,以在進程內接收原始輸入, (最後一次呼叫 RegisterRawInputDevices) 。 因此,不應該從連結庫使用 RegisterRawInputDevices,因為它可能會干擾載入它的應用程式中已經存在的任何原始輸入處理邏輯。

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 winuser.h (包括 Windows.h)
程式庫 User32.lib
Dll User32.dll
API 集合 ext-ms-win-ntuser-rawinput-l1-1-0 (於 Windows 10 10.0.14393 版)

另請參閱

概念

RAWINPUTDEVICE

原始輸入

參考

WM_INPUT