怎么样用findwindow取得application的句柄. ( 积分: 50 )

  • 主题发起人 主题发起人 k4-1
  • 开始时间 开始时间
K

k4-1

Unregistered / Unconfirmed
GUEST, unregistred user!
怎么样用findwindow取得application的句柄.
 
怎么样用findwindow取得application的句柄.
 
你要找主线程的ID吧
 
findwindow(Pchar('TApplication'),PChar(app_title))<br>findwindowex(0,0,Pchar('TApplication'),PChar(app_title))<br>app_title为应用程序的标题
 
function MainApplicationHandle(): HWND;<br>var<br> &nbsp;MainModule: HMODULE;<br> &nbsp;CurrentPID: DWORD;<br> &nbsp;WindowsPID: DWORD;<br>begin<br> &nbsp;MainModule := GetModuleHandle(nil);<br> &nbsp;CurrentPID := GetCurrentProcessID();<br><br> &nbsp;Result := 0;<br> &nbsp;while True do<br> &nbsp;begin<br> &nbsp; &nbsp;Result := FindWindowEx(0, Result, 'TApplication', nil);<br> &nbsp; &nbsp;if (Result = 0) then Exit; // 未找到<br><br> &nbsp; &nbsp;GetWindowThreadProcessID(Result, WindowsPID);<br> &nbsp; &nbsp;if (WindowsPID = CurrentPID) and<br> &nbsp; &nbsp; &nbsp; (HMODULE(GetWindowLong(Result, GWL_HINSTANCE)) = MainModule)<br> &nbsp; &nbsp;then Exit; // 找到!!<br> &nbsp;end;<br>end;
 
谢谢了.......各位.............问题已经解决了...
 
来晚了,没得赚了。哈哈。
 
多人接受答案了。
 
后退
顶部