プロが教えるわが家の防犯対策術!

Cで、ファンクションキーを含む、キーボードのオン・
オフした際の、仮想キーコード、及び、スキャンコード
を拾いたいんです。

画面で何を押したか確認できるような簡単なAPを業務の
必要にせまられて作りたいのですが、サンプルコード
とかどこかに落ちていないでしょうか。

仕様
例えば、vf3, vf4, vf5の各キ-を押したとき、以下の
スキャンコ-ドと仮想キ-コ-ドを発生する。

vf3 : 0x45+E0, VK_NUMLOCK
vf4 : 0x46, VK_OEM_SCROLL
vf5 : 0x29, VK_DBE_SBCSCHAR/VK_DBE_DBCSCHAR

雑誌の付録にあったよ、とか以前こんなの作ったこと
あるよ、とかどんな小さな情報でも結構です。
ご存知の方がいましたらなにとぞよろしくお願いします。
m(__)m m(__)m m(__)m

A 回答 (1件)

仮想keyCodeはGetAsyncKeyState()APIを使えば取得可能です。


ScanCodeはMapVirtualKey()APIで出来そうですね。

ただ質問を見るとシステム全体のキーボード入力をトラップしたい様に見受けられます。
フック自体はSetWindowsHookEx()APIで出来ますが、システム全体にフックを掛ける場合、DLLでの実装が必要です。
確かなぜDLLでなければならないかの解説もwebにあったとおもったのですが・・・失念しました(^^;

で、サンプルソースですが、webに結構転がってます。キーボードカスタマイズ系アプリケーションでソース公開されているものは大体同様の手法を取っているのでそれを探してくればOKではないかとおもいます。

とりあえずぱっと思い出した所で私が普段使ってるKeymacsというユーティリティのsrcが公開されているようです。確かこれもシステムフックを使っていたはずなので、これを参考にしてみるのはいかがでしょうか?

参考URL:http://michiko.shiratori.riec.tohoku.ac.jp/~jir/ …
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!!
半ばあきらめていたのですが、ありがたい情報を
いただきました。
連休明けにさっそく挑んでみたいと思います。
感謝いたします。

お礼日時:2001/09/23 22:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!