皆様、レスありがとうございます。
皆様が教えてくれた事や、サイトは勿論、
自分でも色々調べて以下のサイトを見、
大体こんな流れだろうというのまでは分かりました。
http://www.hey-to.net/ML-archive/vcppML ... 00830.html
1) GetWindowThreadProcessId() で HWND から ProcessID を得る
2) OpenProcess() で ProcessID から hProcess を得る
3) EnumProcessModules() で hProcess から hModule を得る
4) hProcess / hModule を使って GetModuleFileNameEx()
コード: 全て選択
Declare Function GetModuleFileNameEx Lib "psapi" Alias "GetModuleFileNameExA" ( _
hProcess As HANDLE, hModule As DWord, lpFileName As BytePtr, nSize As DWord) As DWord
Declare Function EnumProcessModules Lib "psapi" ( _
ByVal hProcess As Long, ByRef hMod As Long, ByVal sizehMod As Long, ByRef dwlpdwPIDsize As Long) As Long
Dim hWnd As DWord
Dim pid As DWord
Dim hProcess As DWord
Dim buffer[MAX_PATH] As Byte
hWnd=FindWindow(NULL,"ウインドウ名")
GetWindowThreadProcessId(hWnd,VarPtr(pid)) 'プロセスIDを取得
hProcess=OpenProcess(PROCESS_ALL_ACCESS,0,pid) 'プロセスハンドルを取得
EnumProcessModules(hProcess,?,?,?)
GetModuleFileNameEx(hProcess,?, buffer, MAX_PATH)
が、この先は、私の様な者にはちょっとムズすぎる・・・挫折。
95/98では出来ない見たいだし。
また、勉強してから出直してきます。
すいません。ありがとうございました。