C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

ツリー一括表示

別アプリを制御しようとしたキー操作が動かない環境がある /Tom (21/02/16(Tue) 23:50) #96831
Re[1]: 別アプリを制御しようとしたキー操作が動かない環境が.. /Tom (21/02/18(Thu) 21:50) #96849 解決済み


親記事 / ▼[ 96849 ]
■96831 / 親階層)  別アプリを制御しようとしたキー操作が動かない環境がある
□投稿者/ Tom (1回)-(2021/02/16(Tue) 23:50:52)

分類:[C#] 

開発環境:VisualStudio 2017
使用言語:C#

別アプリを制御しようとしてキー操作を
SendKeys.SendWait("+{DOWN}");
で送り込んだのですが、自環境では動作するのですが、他環境では動作しません。
なにか思い当たる節がありませんでしょうか?


実は、以前こちらでこのような内容の質問をして皆様のアドバイスにより、なんとか実現できました。
>別アプリを制御しようとしています。
>やりたいことは別アプリ上のリストボックスのフォーカス行をダブルクリックなのですが、
>当然ながらマウスポインタは全然別の場所に居ます。

ただ、今度は「別アプリのリストビューを複数行を選択して右クリックメニューしたい」と思い、改修いたしました。
やったことは
 1.選択したい先頭行をクリックしてフォーカス行セット
 2.SendKeys.SendWait("+{DOWN}"); を必要回数繰り返し送信してシフト+下矢印操作をして複数行選択
 3.選択されている行にマウスポインタを移動して右クリックメニューを出して、更に"+{DOWN}"と"{ENTER}"を送信して決定
です。
これで自環境ではうまく動作しました(ただなぜかフォーカス行を含めて3行の時のみ妙な挙動をしますが)
が、他環境ではSendKeys.SendWait("+{DOWN}");がまったく動作していないようなのです(諸般の事情から直に挙動をみれてはいないのですが)

で、お知恵をお借りしたいのはこのような「開発環境とそうでない環境での挙動の違いについて気を付けるべきこと」です。
ちょっとぼんやりした質問で申し訳ないのですが、賢者の方、アドバイスを頂けませんでしょうか?
[ □ Tree ] 返信 編集キー/

▲[ 96831 ] / 返信無し
■96849 / 1階層)  Re[1]: 別アプリを制御しようとしたキー操作が動かない環境がある
□投稿者/ Tom (2回)-(2021/02/18(Thu) 21:50:49)
お騒がせしました。
自己解決しました。

原因は「早すぎて送り込む先のアプリが取りこぼしていた」為でした。


解決済み
[ 親 96831 / □ Tree ] 返信 編集キー/


管理者用

- Child Tree -