Windows OS にキーボード コマンド (メッセージ) を送信できる独自のアプリケーションを構築したいと考えています。
たとえば、ctrl+shift+n の組み合わせを押すと、 notepad.exe を起動したいと思います。どうやってやるの?使用されているコンセプトについて何かアドバイスはありますか。
キーボードフックを使用すると可能になると読みましたか? それが唯一の方法ですか?これを可能な限り簡単に行う無料のオープンソース アプリケーションを知っていますか?
AutoHotkeyは、Windows用の無料のオープンソースユーティリティです。
上記のユーティリティを使用して多くのタスクを自動化できます。チェックしてください。
メモ帳を右クリックして [プロパティ] を選択し、「ホット キー」(さまざまな Windows バージョンでは別の名前で呼び出される場合があります) を Ctrl+Shift+N に設定することで、特定の例をプログラミングなしで実行できます。
これを行うプログラムを書きたい場合は、RegisterHotKey Win32 API 関数を参照してください。
注意事項:
システム全体のキーボード フックには、DLL の作成が必要です。私のウェブサイトhereにキーボードフックコードの例があります。
Vista および Windows 7/8/10 では、整合性レベルが低いアプリケーションから高いアプリケーションにフックをインストールすることはできません。したがって、キーがヒットされたときにフォアグラウンド アプリケーションが何であるかによっては、フックが機能するという保証はありません。
Greg が指摘したように、多くの場合、RegisterHotKey はこの問題に対するより簡単な解決策です。