他プロセスにキーコードを送るには?

解決


まいこ  2010-12-20 03:03:16  No: 147266

お世話になります。
他のプロセスを取得し、最前面に表示し、Ctrl+Tab 等のキーコードを
送るにはどのようにすればいいでしょうか。
最前面に表示まではできたのですが、キーコードを送る方法がわかりません。

VB.NET 2005 です。

Declare Auto Function SetForegroundWindow Lib "USER32.DLL" (ByVal hWnd As IntPtr) As Boolean

Dim pList() As Process
Dim hWnd As IntPtr

pList = System.Diagnostics.Process.GetProcesses

For Each p As Process In pList

    'ウィンドウタイトルチェック
    If Not p.MainWindowTitle.Equals("ほにゃらら") Then
        Continue For
    End If

    hWnd = p.MainWindowHandle
    SetForegroundWindow(hWnd)

Next


VBレスキュー(花ちゃん)  URL  2010-12-20 17:01:30  No: 147267

簡単な方法なら、SendKeys.Send メソッド でも可能です。
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.sendkeys.send(v=vs.80).aspx

本格的に操作するなら、SendInput 関数 を使用するとか。
http://hanatyan.sakura.ne.jp/patio/read.cgi?no=245


まいこ  2010-12-20 19:55:13  No: 147268

VBレスキュー(花ちゃん)様、ご回答有難うございました。
教えて頂いた方法で、目的の操作をする事ができました。


河西  2010-12-23 22:14:44  No: 147269

本を買え。バカ君
ただし、上岡バカ勇人の本はやめとけ。
効率が悪い3級のサンプルコードが多く、役にたたない。
それに毎年脱税しているクズだから。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加