tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^3: Windows音声認識のマイクボタン操作につきまして
投稿日: 2022/03/10(Thu) 16:45
投稿者魔界の仮面弁士
>> そもそも、ボタンが固有のウィンドウハンドルを持っているかどうかも未確認。
> ウィンドウハンドルを持ってはいない場合も考えられる事は大変、勉強になりました。

今まで該当機能を見たことがなかったのですが、
「まるい中のマイクボタン」という表現から、矩形でないのなら
おそらくはウィンドウレスだろうな…と予想していました。

一応、マイク搭載機な Win11 があったので、ざっくり確認してみたところ、
やはり各ボタンは、ウィンドウレスコントロールのように見えます。
(ボタンが単独の子ウィンドウになっているのではなく、
 トップレベルウィンドウ上に、ボタンが直接描画されている状態)


以下、手元の環境で確認した限りでは:

(1) 起動されると "C:\Windows\Speech\Common\sapisvr.exe" が立ち上がりました。
 ただし、上記コマンドラインを単独実行しただけでは起動しませんでした。

(2) トップレベルウィンドウ "MS:SpeechTopLevel" は子ウィンドウを持ちませんでした。
 そのため、元質問の FindWindowEx の出番は無さそうに見えます。
 (座標指定で、SendInput API でマウスクリックをエミュレートすることは可能かも?)

(3) UIAutomation で辿ってみたところと、一応、各要素として
 ・外側の"ウィンドウ"
 ・ウィンドウの背景"イメージ"
 ・"マイク モード" のボタン
 ・"マイクのボリューム"表示
 ・状況表示の"ウィンドウ"
 ・閉じるの"ウィンドウ"ボタン
 ・最小化の"ウィンドウ"ボタン
 をそれぞれ拾えることは確認しました。

あるいは、右クリックすると オン/スリープ/オフの選択肢が出てくるので、
コンテキストメニューを操作する方向でも制御できるかもしれません。
(メニューのハンドルまたはオブジェクトを取得できるかどうかは別問題として)

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。