次の方法で共有


RegisterRawInputDevices 関数 (winuser.h)

生入力データを提供するデバイスを登録します。

構文

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

パラメーター

[in] pRawInputDevices

型: PCRAWINPUTDEVICE

生入力を提供するデバイスを表す RAWINPUTDEVICE 構造体の配列。 ポインターは DWORD (32 ビット) 境界に配置する必要があります。

[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 に設定されていない場合、パラメーターの検証は失敗します。

生入力デバイス クラスごとに 1 つのウィンドウのみを登録して、プロセス内で生入力を受信できます (RegisterRawInputDevices の最後の呼び出しで渡されたウィンドウ)。 このため、RegisterRawInputDevices はライブラリから使用しないでください。これは、ライブラリを読み込むアプリケーションに既に存在する生の入力処理ロジックに干渉する可能性があるためです。

要求事項

要件 価値
サポートされる最小クライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
ターゲット プラットフォーム ウィンドウズ
ヘッダー 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