- ベストアンサー
ウィンドウのタイトルからプロセス取得
VB6です。 どのようなAPIを使っていけばよいなど、教えてもらえたらありがたいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
どうも。 この辺りのものが使える関数一覧で、 http://www.winapi-database.com/Program/Process/index.html だいたいこんな感じになると思います(未検証です) Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpszClassName As String, ByVal lpszWindowName As String) As Long Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hWnd As Long, ByRef lpdwProcessId As Long) As Long Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long Const PROCESS_VM_READ As Long = &H10 Function GetWindowProcess(ByVal Title As String) As Long 'ウインドウ名からプロセスハンドルを取得する Dim hWnd As Long Dim PID As Long Dim hProcess hWnd = FindWindow(Title, vbNullString) If hWnd = 0 Then Exit Function 'ウィンドウハンドルからプロセスハンドルを取得 Call GetWindowThreadProcessId(hWnd, PID) hProcess = OpenProcess(PROCESS_VM_READ, 0, PID) GetWindowProcess = hProcess End Function
お礼
ありがとうございます!出来そうです!