Microsoft DirectX 8.0 (Visual Basic) |
Microsoft® DirectInput® はデバイス ドライバに直接働きかけて動作するので、Microsoft Windows® のマウス メッセージとキーボード メッセージは抑制または無視される。DirectInput は、コントロール パネルでユーザーが行ったマウスとキーボードの設定も無視する。ただし、ジョイスティックやその他のゲーム コントローラのキャリブレーションの設定は使用する。
DirectInput は、キーボードの文字反復の設定を認識しない。バッファリング データを利用しているときは、DirectInput は、個々のキーの「押し」と「離し」を反復なしの 1 つのイベントとして解釈する。直接データを利用しているときは、DirectInput が関与するのはキーの現在の物理的状態のみであり、Windows で解釈されるキーボード イベントには関与しない。
DirectInput は、文字変換や平行移動を実行しない。たとえば Shift キーは、他のキーの修正子としてではなく、他のキーと同じように処理される。キーは、ユーザーのシステム言語設定に関係なく、同じ識別子を返す。
Windows 2000 では、排他モードでキーボードを取得すると、その後で起動されたどのアプリケーションもキーボード データを取得できなくなる。
DirectInput は直接マウス ドライバに作用するため、ウィンドウ表示アプリケーションに対してマウス データを解釈する Windows サブシステムをバイパスする。Windows カーソルを使用して移動するアプリケーションは、標準の Windows マウス メッセージおよび Microsoft® Win32® 関数を使用する。
排他モードでマウスを使用すると、DirectInput はマウス メッセージを抑制する。その結果、Windows は標準カーソルを表示できなくなる。
DirectInput は加速値やボタン機能の入れ替えなどのコントロール パネルの設定を無視する。しかし、ドライバそのもので設定を認識する。たとえば、ユーザーが 3 つボタンのマウスを持っていて、ドライバ ユーティリティ ソフトウェアを使って中央のボタンにダブルクリックのショートカットを割り当てると、DirectInput は、中央のボタンの 1 回のクリックを主ボタンの 2 回のクリックとして報告する。