OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

仮想キーコード、スキャンコードの拾い方

  • 困ってます
  • 質問No.138831
  • 閲覧数723
  • ありがとう数2
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 76% (155/202)

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
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル11

ベストアンサー率 58% (114/195)

仮想keyCodeはGetAsyncKeyState()APIを使えば取得可能です。
ScanCodeはMapVirtualKey()APIで出来そうですね。

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

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

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

お礼率 76% (155/202)

ご回答ありがとうございます!!
半ばあきらめていたのですが、ありがたい情報を
いただきました。
連休明けにさっそく挑んでみたいと思います。
感謝いたします。
投稿日時 - 2001-09-23 22:49:19
-PR-
-PR-
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ