• 締切済み
  • 暇なときにでも

Cでキーイベントを発生させるには???

任意のキーを、ソフトウェア的に押すことは簡単に可能でしょうか。 たとえば、ダイアログボックスのボタンを押してくれるフリーソフトがありますが それと同様な処理を行いたいのです。 ソフトウェアを起動しておいて、キーボードのありとあらゆるキーを順番に 押したことにし、ソフトに『押されたキー情報』として渡したいのです。

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数581
  • ありがとう数15

みんなの回答

  • 回答No.2

SendMessage(hwnd, uMsg, wParam, lParam)を使います。 各引数には、次のような値をあてはめます。 hwnd : 『押されたキー情報』を送りたいソフトのウィンドウハンドル uMsg : WM_KEYDOWN wParam : VK_C lParam : 0 wParam : VK_Cは、Cキーの場合です。詳細は仮想キーコードをヘルプで調べるべし。 lParamはわかりません(ごめんなさい)

共感・感謝の気持ちを伝えよう!

質問者からの補足

ありがとうございました。 これだけわかれば十分です、助かりました。

関連するQ&A

  • キーイベントを擬似的に発生させることは可能?

    JavaScriptのイベント処理で質問なのですが、 keydownなどのキーイベントを、実際にキーを押さずに擬似的に「このキーが押された」というイベントを発生させることは可能でしょうか? そもそも不可能ではと思っているのですが もしそういうテクニックがあるのならと思い質問させていただきました。 また、JavaScriptでは無理だがFirefoxのアドオンなら可能といった情報があればぜひ教えていただきたいと思います。

  • JoyToKeyのキーイベント処理

    1つのキーを押すと複数のキーを押したことにするソフトを作ろうと思いました。 そこで以下の方法でキーイベントを発生させて試してみました。 ・keybd_eventで処理。 ・PostMessageで処理。 ・SendInputで処理。 しかしメモ帳などではちゃんと機能するのですが、ゲームで機能してくれないものがあります。 JoyToKeyを使うときちんとキーボードが押された事になっているので、何か他の方法があるのだろうかと思い質問させていただきました。 よろしくお願いします。

  • キー配置カスタマイズソフト

    当方WINXPを利用しております。 ネットブラウザはIEを利用せずOpera(既定のブラウザに設定)を利用します。 私のPCのキーボードにはブラウザを開くショートカットボタンが付いてるのですが、これを押すと利用してないIEが立ち上がってしまいます。 このボタンを押すとOperaが立ち上がるようにしたいと思いキーカスタマイズソフトを色々試してみたのですが、あくまでキー配置を転換、無効にするぐらいでショートカットを割り当てるソフトが見つかりません。 同様に任意のボタンを「デスクトップの表示」ボタンに変更したい(前のキーボードには標準でついてました)のですが このようなキー割り当てが出来るフリーウェアはございますか?

  • 回答No.1

WindowsのAPIを使えば可能でしょう。 WindowMessageでアクティブウィンドウにキー情報を送れば可能なはずです。

共感・感謝の気持ちを伝えよう!

質問者からの補足

ありがとうございます。 ヘルプで見てみると、そのようなAPIがどうも見つからないようなのですが (素人)DirectX か何かでしょうか??? 具体的な使い方が載ってないので 難儀しています。。。

関連するQ&A

  • BIOSパスワード設定の為には、「F4キー」?

    よろしくお願いします。 PCのBIOSパスワードの設定等で、Windows起動前にあるキーボードのボタンを押して表示させると思うのですが、これは各メーカー(BIOSソフトウェア?)によってキーが違うのでしょうか? ほとんどが、「F4キー」だと思っていただのですが。 ちなみに、今不明なのは、CompaqArmadaE500という機種です。 以上、よろしくお願いします。

  • 「○○+○○」のキー操作をキー1つで行いたい

    Windows版のとあるゲームをプレイしています。 そのゲームはシステム上「Shift+F1」を入力する場面が非常に多いのですが、いちいちそのたびにゲームパッドから手を放してShiftを押しながらF1を押すのはとても面倒で、何とかキー1つでこの操作を行う方法がないものかどうか、いつも考えてしまいます。 任意のキー同士の組み合わせをどこかのキー(ゲームパッドやマウスのボタンなどでも可)に割り当てて、それを押すだけで同様の効果を出せるような方法はないものでしょうか? キーボード上のキーにはそれぞれ固有の役割があるので、Windowsそのものにそういう機能がついていることは期待していませんが、ゲームパッドなどをつないでそのキーで行うためのソフトならあるかもしれない、と思っています。

  • コントローラのボタンにキーボードのキーを割り当て

    こんにちは。 オンラインゲームで、キーボードの一部のキーのみをコントローラで使っていないボタンに割り当てられたら、とても便利だなぁと思ったのですが、 キーボードのキーをコントローラのボタンに割り当てられるソフトというものは存在するのでしょうか。 教えてください^^

  • ○○のソフトを○○キーで起動

    何かのソフトを何かのキーで起動できるようになるフリーソフトはありませんか?

  • Ctrlキーが押されたことの検出

    コントロールキーを押しながらコマンドボタンを押した時と、単にコマンドボタンを押した時とで、処理を変えようかと考えています。 Application.OnKey "^{}", "ctrl"で、キーを捕まえようかと考えましたが。エラーになります。 で、質問ですが、1つは、Ctrlキー、Shiftキー、Altキーを単体で押したときに任意のプロシージャーを実行することってできますか? 2つ目は、任意のプロシージャーではなく、押されているかどうかの状態のみ調べる方法ってありますか? どなたか、詳しい方教えて頂けないでしょうか?宜しくお願い致します。

  • keydownイベントについて

    VB6.0について質問です。 現在フォームが大きいのでピクチャーにスクロールバーをつけて対応しています。 フォームでキーボードの矢印ボタンを押すことでも上下の移動を可能にしたいのですがうまくいきません。 フォーカスがチェックボックスやオプションボタンにあるとキーダウンがきいてくれません。。。 キーダウンイベントでどのような処理を行えば実現できますか?

  • 履歴がDeleteキーで消えません

    IE6です。標準ボタンに履歴のボタンがありますね。このボタンを押すと履歴が並びますが、消したい履歴フォルダを選択してDeleteキーを押すと、フォルダの削除の確認ダイアログボックスが表示されていたんですが、先ほどから、このダイアログボックスが出ないようになりました。正確に言うと、ダイアログボックス出る時もあるんですが、出ない時が多いのです。何故こうなったんでしょうか?もちろん、右クリックして削除すれば、事足りるんですが、Deleteキーで削除したいのです。 お気に入りのフォルダは問題なく、Deleteキーで削除することができます。 サイトによって、この方法が使えるところと使えない所があるのかも知れません。ヤフーやOKWebの画面を開いているとダメのようなんですが・・・。 よろしくお願いします。

  • キーボードの[R]キーのみ打てなくなる

    PCをある程度の時間使っていると、ときどきキーボード上のRキーが利かなくなることがあります。 これだけならば単純にキーボードの物理的な故障を疑う話なのですが、下記の理由から何らかのソフトウェア上の問題と考えております。 (1)複数のキーボードで同時に打てなくなる USB接続の有線キーボード(メーカー不明、アキバで安かったもの)と、ロジクール無線キーボード(K270)の2つをつないで利用しておりますが、そのいずれでもRキーが効かなくなります。 (2)SHIFT同時押しによる「大文字R」ならば打てる アルファベット入力・日本語(ローマ字入力)に関わらず、「小文字r」の入力(Rキー単体押し)は反応せず、SHIFTキー同時押しによる「大文字R」ならば入力が可能な状態です。 ((1)の状況とあわせ、いずれのキーボードでも「大文字R」ならば出る) (3)再起動すると症状が消え、小文字rが入力できるようになる また症状が再発してしまうこともありますが、PC起動直後、あるいは症状が出た際に再起動した直後は問題なくRキーが利きます。 (1)・(2)・(3)の理由から、物理的な故障ではなく、Winwows上のなんらかのソフトウェアや設定が原因と睨んでいますが、どうにも原因の切り分けが出来ません。 症状発生の直前の行動もまちまち(2ch書込時・ニコニコ動画コメント入力時からメールやテキストファイル、Wordファイル入力時などキーボード入力を用いる作業全般)であり、原因となりそうなソフトの特定が難しい状態です。 とはいえ、起動直後から症状が出るわけではないので、やはり何かしらの行動が原因となっているとは思うのですが・・・ どなたか、似たような症状に遭われた方、原因や解法をご存知の方がいらっしゃいましたらどうぞご教示のほどよろしくお願い致します。 PCの環境は下記の通りです。 Windows7 64bit (最新の状態までWindows update済) 常駐ソフト Becky2・Thilmera7・Googleドライブ・かざぐるマウス・Splashtop streamerなど

  • キー入力を記憶するバックアップソフト探してます

    キーボードでキーを打ちますよね。 その打ったキーをすべて順番通りにバックアップしてくれる バックアップソフトを探しています。 よく間違えて消してしまうことが多く せめてコピーペーストでもしておけばよいのですが そんなこともしてないことがほとんどでして あまりにも自分がうっかり消してしまい あとで泣きを見ることが多いので そんなソフトがフリーであればと思って聞いてみました。 フリーでなくてもかまいません。 よろしくお願いします。

  • キー操作

    オンラインゲームをしていて、 キーボードのキーとマウスの左クリックを交互に連打する ことがあるのですが、その動作を特定のキーに覚え込ませて ボタン一つで動作をしてくれるソフトというのは存在しますでしょうか もし、あったら教えてください。