・環境です。
C++ で、DXライブラリ 使ってます。
開発環境:BCC Developer
OS:Windows XP SP3
たまに、DXライブラリを使ったゲームをデバグしていると、急にキーボードが反応しなくなることがあるのですが
誰か同じ現象にあったことがある方、または原因が分かる方はいませんか?
キーボードが反応しなくなるのは、DXライブラリを使ったゲーム内のみで、他のタスクでは正常に反応します。
なお、コードやプログラムのミスの可能性はありません。
過去に作ったゲームを起動してみると(加工していない)、反応するべきなのに、キーボードが反応しなくなっています。
つまり、DXライブラリのゲーム、すべてでキーボードが反応しなくなっています。
また、OSを再起動すると回復しています。
同じような経験がある方、いるでしょうか?
キーボードが反応しなくなる
Re:キーボードが反応しなくなる
>>Maさん
1:デバッグしている場所でキー更新がされていない
これは単にプログラムのミスですが、その可能性はないそうなので・・・
2:二つ以上の、複数同時押しする場所でキーがきかない
これはキーボード自体が原因です。
あるキー押下情報が複数になると反応しなくなる場合があります。
解決手段は、キーの割り当てを変えるか、キーボードを購入するかです。
3:別のアプリケーションが起動して、そのゲームが非アクティブになった
アクティブ・非アクティブ問わずキー情報を更新しているのであればこれは違うと思います。
キーがきかない原因について、自分ではこれくらいしか言えないです。
申し訳ないです;
「何かした時にキーがきかない」等、より詳しい情報があれば何か解決結びつくかも知れません。
1:デバッグしている場所でキー更新がされていない
これは単にプログラムのミスですが、その可能性はないそうなので・・・
2:二つ以上の、複数同時押しする場所でキーがきかない
これはキーボード自体が原因です。
あるキー押下情報が複数になると反応しなくなる場合があります。
解決手段は、キーの割り当てを変えるか、キーボードを購入するかです。
3:別のアプリケーションが起動して、そのゲームが非アクティブになった
アクティブ・非アクティブ問わずキー情報を更新しているのであればこれは違うと思います。
キーがきかない原因について、自分ではこれくらいしか言えないです。
申し訳ないです;
「何かした時にキーがきかない」等、より詳しい情報があれば何か解決結びつくかも知れません。
Re:キーボードが反応しなくなる
私は、ウィルスバスターを起動してると、ShiftやCtrl、Altが反応しなくなったという事がありました。
その場合は、ゲームを例外に設定する事でキーボードは使えるようになりましたが、プログラム上で対応する事は出来なさそうでした。
その場合は、ゲームを例外に設定する事でキーボードは使えるようになりましたが、プログラム上で対応する事は出来なさそうでした。
Re:キーボードが反応しなくなる
PCを購入した時に標準で付いて来る常駐系ソフトや、後にインストールしたユーティリティ系ソフトによって特定のキー操作が効かなくなる場合があるようです。
ところで、その症状は最近起こったものでしょうか?
もしそうなら、その前後に行なったこと(ソフトをインストールした等)が原因かもしれません。
(キーボードフックが関連しそうです)
私の場合は、あるユーティリティ系ソフトを使っていると、
たまにキー操作がおかしくなったことがありました。
(そのせいでそのソフトはもう使わなくなりましたが)
ところで、その症状は最近起こったものでしょうか?
もしそうなら、その前後に行なったこと(ソフトをインストールした等)が原因かもしれません。
(キーボードフックが関連しそうです)
私の場合は、あるユーティリティ系ソフトを使っていると、
たまにキー操作がおかしくなったことがありました。
(そのせいでそのソフトはもう使わなくなりましたが)
Re:キーボードが反応しなくなる
皆さん返答ありがとうございます。
ですが、皆さんの回答を読んでみると、DXライブラリを使用したゲーム外でも
キーボードが使えなくなっているようですが、私の場合
DXライブラリを使ったアプリでのみキーボードが反応しなくなっています。
(OSを再起動してみると、再起動前までは反応がなかったゲーム(加工していない)が反応するようになりました。)
>2:二つ以上の、複数同時押しする場所でキーがきかない
キーひとつでも複数でも反応しないです。
>私は、ウィルスバスターを起動してると、ShiftやCtrl、Altが反応しなくなったという事がありました。
私の場合は、すべてのキーでした。><
>後にインストールしたユーティリティ系ソフトによって特定のキー操作が効かなくなる場合があるようです。
たしかに、これがありえるような気がします。
>「何かした時にキーがきかない」等、より詳しい情報があれば何か解決結びつくかも知れません。
もう少し、調査してみたいところなのですが、滅多に起きない症状なので、検証が難しい状況ですorz
ただ、キーの入力情報は
もしかしたら、GetHitKeyStateAll の方に私のPCの何かと相性が悪いのかもしれませんね。
ですが、皆さんの回答を読んでみると、DXライブラリを使用したゲーム外でも
キーボードが使えなくなっているようですが、私の場合
DXライブラリを使ったアプリでのみキーボードが反応しなくなっています。
(OSを再起動してみると、再起動前までは反応がなかったゲーム(加工していない)が反応するようになりました。)
>2:二つ以上の、複数同時押しする場所でキーがきかない
キーひとつでも複数でも反応しないです。
>私は、ウィルスバスターを起動してると、ShiftやCtrl、Altが反応しなくなったという事がありました。
私の場合は、すべてのキーでした。><
>後にインストールしたユーティリティ系ソフトによって特定のキー操作が効かなくなる場合があるようです。
たしかに、これがありえるような気がします。
>「何かした時にキーがきかない」等、より詳しい情報があれば何か解決結びつくかも知れません。
もう少し、調査してみたいところなのですが、滅多に起きない症状なので、検証が難しい状況ですorz
ただ、キーの入力情報は
char Buf[ 256 ] ; GetHitKeyStateAll( Buf ) ;によって入手しているという事ぐらいでしょうか…
もしかしたら、GetHitKeyStateAll の方に私のPCの何かと相性が悪いのかもしれませんね。
Re:キーボードが反応しなくなる
症状を見る限りではオーバーフローを起こしている可能性が
最も高いと思えます。
別の方の作ったプログラムでも再現されるのでしょうか?
まずこの点を確認するのが良いかと思います。
最も高いと思えます。
別の方の作ったプログラムでも再現されるのでしょうか?
まずこの点を確認するのが良いかと思います。
Re:キーボードが反応しなくなる
>別の方の作ったプログラムでも再現されるのでしょうか?
別のプログラム、つまり他のゲームということですよね?
>つまり、DXライブラリのゲーム、すべてでキーボードが反応しなくなっています。
↑他のプログラムでも同じように、反応しません。
別のプログラム、つまり他のゲームということですよね?
>つまり、DXライブラリのゲーム、すべてでキーボードが反応しなくなっています。
↑他のプログラムでも同じように、反応しません。
Re:キーボードが反応しなくなる
> ↑他のプログラムでも同じように、反応しません。
解りづらくてすみません、私が聞きたかったのは
症状が出てからの他のプログラムの動作ではなく、
DXライブラリを使った他の方のプログラム使用中に
同様の症状が発生するのかどうかです。
解りづらくてすみません、私が聞きたかったのは
症状が出てからの他のプログラムの動作ではなく、
DXライブラリを使った他の方のプログラム使用中に
同様の症状が発生するのかどうかです。
Re:キーボードが反応しなくなる
>DXライブラリを使った他の方のプログラム使用中に
>同様の症状が発生するのかどうかです。
(以下、私のSooAさんの発言に対しての解釈が合っているか分かりません…)
私の言い方が悪いのでしょうね。すみません。
DXライブラリで作ってあるゲームA、ゲームB、ゲームCがあるとすれば
すべてのゲームA,B,Cにおいて、キーが反応しなくなります。
同時に起動していようが、ひとつずつ起動しようが、すべて反応しません。
という事で合ってますよね?(SooAさんが仰っている事に対しての、私の解釈)
あ、もしかしてゲームAが動作中に、ゲームBを起動して
そのゲームBを起動後に突然症状が発生するかということでしょうか?
そういうことでしたら、その時の状況があまり覚えていないので確かではないですが、
ゲームは一個しか起動していませんでしたし、起動時から、すでにキーボードは反応しなくなっていました。
>同様の症状が発生するのかどうかです。
(以下、私のSooAさんの発言に対しての解釈が合っているか分かりません…)
私の言い方が悪いのでしょうね。すみません。
DXライブラリで作ってあるゲームA、ゲームB、ゲームCがあるとすれば
すべてのゲームA,B,Cにおいて、キーが反応しなくなります。
同時に起動していようが、ひとつずつ起動しようが、すべて反応しません。
という事で合ってますよね?(SooAさんが仰っている事に対しての、私の解釈)
あ、もしかしてゲームAが動作中に、ゲームBを起動して
そのゲームBを起動後に突然症状が発生するかということでしょうか?
そういうことでしたら、その時の状況があまり覚えていないので確かではないですが、
ゲームは一個しか起動していませんでしたし、起動時から、すでにキーボードは反応しなくなっていました。
Re:キーボードが反応しなくなる
読み返したら回答になってなかったので気にしないでください。
原因はPCにあるのかDXライブラリにあるのかプログラムの書き方にあるのか分からないみたいなので、とりあえず、サンプルプログラムの実行をしてみてはどうでしょうか
http://homepage2.nifty.com/natupaji/DxL ... am.html#N1
このプログラムを使っても動かなければパソコンに問題がありそうです。
原因はPCにあるのかDXライブラリにあるのかプログラムの書き方にあるのか分からないみたいなので、とりあえず、サンプルプログラムの実行をしてみてはどうでしょうか
http://homepage2.nifty.com/natupaji/DxL ... am.html#N1
このプログラムを使っても動かなければパソコンに問題がありそうです。
Re:キーボードが反応しなくなる
公開しても差し支えがないならプロジェクト丸ごとをアップされるのがよいのではないでしょうか?
そのプロジェクトでほかの人のPCでも同様の現象が発生するのであれば、プログラムに問題がある可能性が高いですし、発生しないのであればMaさんのPCの問題と切り分け出来るでしょう。
いくつか質問
1.DXライブラリで作っていないDirectXを使用しているソフトでは問題ないのでしょうか?
2.現象が発生するのはデバッグ中だけですか?
EXEを直接起動した場合や、リリースビルドして実行した場合に発生しないのでしょうか?
3.使用しているDXライブラリのバージョンは?
最新でないのなら最新にして見るとか。
4.現象が発生するようになった前にDirectXに絡みそうなところでPCの設定かえたり、何かのソフトをインストール(or 更新)したりしましたか?(覚えてないかもしれませんけど)
そのプロジェクトでほかの人のPCでも同様の現象が発生するのであれば、プログラムに問題がある可能性が高いですし、発生しないのであればMaさんのPCの問題と切り分け出来るでしょう。
いくつか質問
1.DXライブラリで作っていないDirectXを使用しているソフトでは問題ないのでしょうか?
2.現象が発生するのはデバッグ中だけですか?
EXEを直接起動した場合や、リリースビルドして実行した場合に発生しないのでしょうか?
3.使用しているDXライブラリのバージョンは?
最新でないのなら最新にして見るとか。
4.現象が発生するようになった前にDirectXに絡みそうなところでPCの設定かえたり、何かのソフトをインストール(or 更新)したりしましたか?(覚えてないかもしれませんけど)
Re:キーボードが反応しなくなる
>公開しても差し支えがないならプロジェクト丸ごとをアップされるのがよいのではないでしょうか?
>そのプロジェクトでほかの人のPCでも同様の現象が発生するのであれば、
>プログラムに問題がある可能性が高いですし、発生しないのであればMaさんのPCの問題と切り分け出来るでしょう。
すいません、ちょっと公開しにくいです><
>そのプロジェクトでほかの人のPCでも同様の現象が発生するのであれば
ちょっと、これは難しいと思います。
私のPCでさえ、滅多にキーボードが反応しなくなる事はありません。
本当にまれに起きる症状なので、同様の症状が他のPCで起きるかどうか確認するのは
かなり大変な事になると思います…
私の場合、今回の件を除けば、最後に反応しなかったのは、一ヶ月ぐらい前だったような気がします。
(毎日平均3時間くらい、いじっています)
この一ヶ月前というのも、今回と同様の症状でしたが、OSの再起動で直りました。
もうひとつのPCで、テストプレイした事が6回程度ありますが、この六回では一切問題ありませんでした。
>1.DXライブラリで作っていないDirectXを使用しているソフトでは問題ないのでしょうか?
反応しなくなった時に、DXライブラリ以外のゲームでチェックをしていなかったので、なんともいえないです。
キーボードが反応しなくなった時と限らなければ、まったく問題ないです。
>2.現象が発生するのはデバッグ中だけですか?
> EXEを直接起動した場合や、リリースビルドして実行した場合に発生しないのでしょうか?
EXEを直接起動した場合も、同様に反応しません。リリースビルドも同様です。
>4.現象が発生するようになった前にDirectXに絡みそうなところでPCの設定かえたり、何かのソフトをイン>ストール(or 更新)したりしましたか?(覚えてないかもしれませんけど)
すいません、覚えていないです。
ちょっと今の状況と情報量では、原因の究明や進展は得られにくいと思うので、
また同様の症状が発生した時に、書き込みしようかと思います。(新しいスレになると思いますが)
その時は、OS再起動しないように努めます。
>そのプロジェクトでほかの人のPCでも同様の現象が発生するのであれば、
>プログラムに問題がある可能性が高いですし、発生しないのであればMaさんのPCの問題と切り分け出来るでしょう。
すいません、ちょっと公開しにくいです><
>そのプロジェクトでほかの人のPCでも同様の現象が発生するのであれば
ちょっと、これは難しいと思います。
私のPCでさえ、滅多にキーボードが反応しなくなる事はありません。
本当にまれに起きる症状なので、同様の症状が他のPCで起きるかどうか確認するのは
かなり大変な事になると思います…
私の場合、今回の件を除けば、最後に反応しなかったのは、一ヶ月ぐらい前だったような気がします。
(毎日平均3時間くらい、いじっています)
この一ヶ月前というのも、今回と同様の症状でしたが、OSの再起動で直りました。
もうひとつのPCで、テストプレイした事が6回程度ありますが、この六回では一切問題ありませんでした。
>1.DXライブラリで作っていないDirectXを使用しているソフトでは問題ないのでしょうか?
反応しなくなった時に、DXライブラリ以外のゲームでチェックをしていなかったので、なんともいえないです。
キーボードが反応しなくなった時と限らなければ、まったく問題ないです。
>2.現象が発生するのはデバッグ中だけですか?
> EXEを直接起動した場合や、リリースビルドして実行した場合に発生しないのでしょうか?
EXEを直接起動した場合も、同様に反応しません。リリースビルドも同様です。
>4.現象が発生するようになった前にDirectXに絡みそうなところでPCの設定かえたり、何かのソフトをイン>ストール(or 更新)したりしましたか?(覚えてないかもしれませんけど)
すいません、覚えていないです。
ちょっと今の状況と情報量では、原因の究明や進展は得られにくいと思うので、
また同様の症状が発生した時に、書き込みしようかと思います。(新しいスレになると思いますが)
その時は、OS再起動しないように努めます。