tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルデバイス マネージャーにキーストロークを送る
記事No16587
投稿日: 2020/10/13(Tue) 23:03
投稿者ugusu_takamaru
Windows10上で認識しなくなった拡張ボードを自動で再認識させるために
VB6でデバイス マネージャーを遠隔操作して削除と再スキャンするプログラムを考えています。
@shellで目的のプログラムを呼び出し
AAppActivateでそのプログラム画面をアクティブにし
Bkeybd_eventでキーストロークを送る
の考え方でテストしているのですが
相手がデバイス マネージャーの場合は@で以下を実行してAまでは成功するのですがBが無反応
C:\Windows\System32\cmd.exe /c C:\Windows\System32\DEVMGMT.MSC
相手をメモ帳に変えて@で以下を実行するとABも思い通りに動作します。
C:\Windows\System32\cmd.exe /c C:\Windows\System32\notepad.exe
なぜデバイス マネージャーだけ機能しないのか分からないので
解決法をご存じでしたらご教授願います。

[ツリー表示へ]
タイトルRe: デバイス マネージャーにキーストロークを送る
記事No16588
投稿日: 2020/10/14(Wed) 11:09
投稿者魔界の仮面弁士
> Windows10上で認識しなくなった拡張ボードを自動で再認識させるために
> VB6でデバイス マネージャーを遠隔操作して削除と再スキャンするプログラムを考えています。

ローカルコンピューター限定ですが、デバイス コンソール (DevCon.exe)が使えないでしょうか。

https://docs.microsoft.com/ja-jp/windows-hardware/drivers/devtest/devcon-remove?WT.mc_id=DT-MVP-8907
https://docs.microsoft.com/ja-jp/windows-hardware/drivers/devtest/devcon-rescan?WT.mc_id=DT-MVP-8907
https://docs.microsoft.com/ja-jp/windows-hardware/drivers/download-the-wdk?WT.mc_id=DT-MVP-8907

[ツリー表示へ]
タイトルDevCon調べてます
記事No16590
投稿日: 2020/10/14(Wed) 19:05
投稿者ugusu_takamaru
魔界の仮面弁士 様
回答ありがとうございます。
DevCon.exeの使った事が無いのでただいま調べています。
テストが済んだら結果をお知らせ致します。

[ツリー表示へ]
タイトルRe: デバイス マネージャーにキーストロークを送る
記事No16589
投稿日: 2020/10/14(Wed) 15:44
投稿者みい
キーストロークを送り込みたいのはデバイスマネージャのリスト部分でしょうか。

もしそうであれば、
今手持ちのWin10PCをすぐ起動できない状態なので確認できないので
Win7での動きになりますが、
・メモ帳は起動時入力部分にフォーカスがある状態
・デバイスマネージャは起動時リスト部分にフォーカスがない状態
です。
この場合、タブキーを送り込んでリスト部分にフォーカスを移す必要があります。

[ツリー表示へ]
タイトル最初のTABから送れないのです;
記事No16591
投稿日: 2020/10/14(Wed) 19:09
投稿者ugusu_takamaru
みい 様
回答ありがとうございます。
TABキーを押して下矢印で目的の行に移動してDelete、Enterでアンインストールする
などのキー操作を送りたいのですが最初のTABが送れない状況です。

[ツリー表示へ]
タイトルRe: 最初のTABから送れないのです;
記事No16592
投稿日: 2020/10/14(Wed) 19:51
投稿者みい
keybd_eventでのTABキーの送り方は
http://hanatyan.sakura.ne.jp/vb6/keyboard03.htm
(先頭にh付加)

'次のタブ位置へ移動 [TAB]
コメント下の2行と同じ感じですか?

[ツリー表示へ]
タイトル変わらずTAB動作しません
記事No16593
投稿日: 2020/10/14(Wed) 20:31
投稿者ugusu_takamaru
ご指摘の部分と同じような使い方ですが
MapVirtualKey(vbKeyTab, 0)の部分は"0"でテストしていたので合わせてみましたが
状況は変わらずTABが送られないのでデバイスリスト部分にカーソルが移動ませんでした。

[ツリー表示へ]
タイトルRe: 変わらずTAB動作しません
記事No16594
投稿日: 2020/10/15(Thu) 10:48
投稿者みい
キーストロークを送り出す実行ファイルは管理者として実行していますか?

簡易的なアプリ作って実験したところ、普通に実行したらダメでしたが
管理者として実行したらいけましたよ。

[ツリー表示へ]
タイトル確かに管理者で動きました!
記事No16595
投稿日: 2020/10/15(Thu) 14:48
投稿者ugusu_takamaru
みい 様
実験までして頂いてありがとうございます。
開発環境でテストしていて動きませんでしたが、
実行ファイルを作って確認した所
通常はダメでも管理者として実行だと動きました。
この方法で先に進んでみます。

[ツリー表示へ]