どのようにして LabVIEW から他のアプリケーションへキーストロークを送ることができますか?



使用ソフトウェア:
使用ソフトウェア・バージョン: N/A
使用ソフトウェア・バージョンに特化: N/A
二次のソフトウェア: N/A

問題: LabVIEWから「シフト+q」の信号(大文字 Q )を他のアプリケーションに送りたいのですがどのようにしたらできますか?

解決策: キーストロークを LabVIEW から他のアプリケーションに送るには [ライブラリ関数呼び出しノード] 関数を使い Windows API 関数の User32.dll に含まれる keybd_event() 関数を使うことで実現できます。

keybd_event() 関数は特殊キーの状態を設定する関数です。LabVIEWから本関数を使うことで、プログラム的に Windows OS へキーストロークを設定することができます(キーボードを押していなくても、擬似的に特定のキーが押された動作をとらせることができます)。本機能は画面の最前面にあるアプリケーションにのみ有効です。

キーストロークは、キーボードが押された状態の「押下」モードと、キーボードを押した後の離された状態の「開放」モードの2つから成り立ちます。
そのため、大文字のQを押すためのプログラムのロジックは以下の通りになります。

  1. 「シフト」キー押下

  2. 「q」キー押下

  3. 「q」キー開放

  4. 「シフト」キー開放


* keybd_event() 関数の詳細仕様については、Microsoft社のウェブページを参照下さい。


関連リンク:

添付:


keybd_event_sample.vi - keybd_event_sample.vi


報告日時: 01/13/2004
最終更新日: 03/13/2005
ドキュメントID: 35CDQ4W0