VoiceOperatorは、
マイクなどで音声入力することで、いろいろなソフトを操作したり、
起動したりすることができるソフトです。
音声認識システムは、Microsoft提供のSpeechAPIの使用を予定しています。
音声入力できる操作は多岐にわたり、
声で登録ソフトを動かすことはもちろん、あらかじめ指定したウィンドウのボタンを押させたり、
キーを押させたり、
まさにいろいろなことがたったほんの少しの設定でできるようになります。
基本的な動作は単純で、
音声認識をスタートさせるための主語、その後に、1個以上の述語を、
一定時間内に言うことで、登録動作を実行します。
主語や述語が認識できたとき、できなかったときには、
音声やアイコンのフラッシングなどのサインを出すことで、合図します。
メモリ消費を防ぐために、
音声認識システムを完全にオフ(待機状態)にもできるようにするといいかもしれません。
このソフトから操作可能な項目は三種類、
ボタンやメニューのクリック、ウィンドウメッセージの送出、アプリケーションの起動の三つです。
この処理は、少し対象にできるものが限定されますが、
FindWindowAPIにて対象のウィンドウを選択、FindWindowExAPIを使って絞込み、
クリックメッセージを送出するという流れを企画しています。(もっといい方法があるのかもしれませんが)
同じ要領でウィンドウメッセージを直接送出させることもできるようにします。
これにより、対応しているソフトならば、
より多くの動作を声で実行できるようになります。
定数→ウィンドウメッセージはもちろんのこと、
各アプリケーションが独自に定義したウィンドウメッセージ(RegisterWindowsMessageを使ったもの)のサポートや、
WM_APP以降のメッセージもすべてサポートする必要があります。
そして、定数名または数値、定義したウィンドウメッセージの名前を入れるだけで、ウィンドウを操作できます。
アプリケーションの起動は、普通にアプリケーションを起動します。 普通のランチャーと変わりありません。