トップページ > 過去ログ > 記事閲覧
Vistaでキー入力が効かない
名前:C学習者 日時: 2009/09/07 23:12

はじめまして。 現在DXライブラリの最新バージョン3.00を使用させてもらっています。 しかし、タイトル通りなのですが、VistaでGetHitKeyStateAllを使用しても反応しません。 戻り値は0なので関数自体でエラーは発生していないと思います。 また、バージョン2.25bで同様のプログラムを実行したところ、十字キーが反応しませんでした。 すべて(?)のキーが反応していたバージョンは2.23あたりだったと思います。

Page: 1 |

Re: Vistaでキー入力が効かない ( No.1 )
名前:kenta 日時:2009/09/09 00:30

はじめまして。 僕も同じ状況になったことがあります。 キーボードとDirectInput関連の相性なのかどうかは知りませんが、最近のキーボードだと反応しないような気がします。でも僕の場合DirectXのバージョンを下げたら(10->9.0c)きちんと動作しました!
Re: Vistaでキー入力が効かない ( No.2 )
名前:管理人 日時:2009/09/09 00:57

押されたキーのマクロ名が表示されるテストプログラムを作成してみましたので よろしければC学習者さんの環境で実行してみていただけないでしょうか? http://homepage2.nifty.com/natupaji/temp/CheckHitKeyTest.zip 起動すると真っ暗のウインドウが開きます 起動が完了したかなという頃にキーを押すと、正常に検出される場合は文字列で 押したキーのマクロ名が表示されるはずです もし何も表示されませんでしたら、C学習者さんが作成されたプログラムの DxLib_Init を呼び出す前の行に SetUseDirectInputFlag( FALSE ) ; という記述を 追加してみてください、キーの押下状態の取得に DirectInput を使用しなくなりますので 左右のシフトキーの判別ができないなど細かい部分で検出できる情報に差がありますが、 殆どのキーを正常に検出できるようになると思います。 > kentaさん うぉ、最近のキーボードだと反応しないんですか (・・;;
Re: Vistaでキー入力が効かない ( No.3 )
名前:C学習者 日時:2009/09/09 20:37

>>kenta 様 2年前のキーボードですが、DirectInputと相性が悪いのかもしれません… >>管理人 様 では報告を。 >テストプログラム ほとんどのキーを押しましたが、真っ暗でした。 >SetUseDirectInputFlag( FALSE ) おお、最新バージョンでもちゃんと反応しました! ということはDirectInputが原因でしょうか。
Re: Vistaでキー入力が効かない ( No.4 )
名前:管理人 日時:2009/09/12 17:23

ご報告ありがとうございます お察しの通り DirectInput が原因みたいですね・・・ Vista ではキーボードの押下状態の取得に DirectInput を使用しないようにします
Re: Vistaでキー入力が効かない ( No.5 )
名前:C学習者 日時:2009/09/14 16:21

対応ありがとうございました。

Page: 1 |