很简单的API问题 ( 积分: 20 )

  • 主题发起人 主题发起人 tofiofans
  • 开始时间 开始时间
T

tofiofans

Unregistered / Unconfirmed
GUEST, unregistred user!
怎么求出进程管理器中,进程的句柄<br>比如 qq.exe<br>谢谢!<br>
 
怎么求出进程管理器中,进程的句柄<br>比如 qq.exe<br>谢谢!<br>
 
大侠帮帮忙啊
 
怎么没人帮忙看看啊
 
用HWND FindWindow(<br><br> &nbsp; &nbsp;LPCTSTR lpClassName, // pointer to class name<br> &nbsp; &nbsp;LPCTSTR lpWindowName // pointer to window name<br> &nbsp; );<br>
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1809715
 
[red]这是杀死进程的源代码/ExeFileName为程序名,如QQ.exe[/red]<br>function KillTask(ExeFileName: string): Integer;<br>const<br> &nbsp;PROCESS_TERMINATE = $0001;<br>var<br> &nbsp;ContinueLoop: BOOL;<br> &nbsp;FSnapshotHandle: THandle;<br> &nbsp;FProcessEntry32: TProcessEntry32;<br>begin<br> &nbsp;Result := 0;<br> &nbsp;FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);<br> &nbsp;FProcessEntry32.dwSize := SizeOf(FProcessEntry32);<br> &nbsp;ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);<br><br> &nbsp;while Integer(ContinueLoop) &amp;lt;&amp;gt; 0 do<br> &nbsp;begin<br> &nbsp; &nbsp;if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =<br> &nbsp; &nbsp; &nbsp;UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =<br> &nbsp; &nbsp; &nbsp;UpperCase(ExeFileName))) then<br> &nbsp; &nbsp; &nbsp;Result := Integer(TerminateProcess(<br> &nbsp; &nbsp; &nbsp; &nbsp;OpenProcess(PROCESS_TERMINATE,<br> &nbsp; &nbsp; &nbsp; &nbsp;BOOL(0),<br> &nbsp; &nbsp; &nbsp; &nbsp;FProcessEntry32.th32ProcessID),<br> &nbsp; &nbsp; &nbsp; &nbsp;0));<br> &nbsp; &nbsp;ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);<br> &nbsp;end;<br> &nbsp;CloseHandle(FSnapshotHandle);<br>end;<br><br>
 
对了,还要uses TlHelp32;<br>才行。
 
顺路问下为什么有的程序用 findwindow就进汇编那,过不去.
 
Findwindow和FindwindowEx不可能进入汇编,是不是你用错了
 
mikejiang:<br>如果要屏幕右下角的图标也自动消失<br>是不是要刷新一下?<br>怎么刷新?<br>谢谢!
 
那是程序调试窗口。不可能是汇编。/
 
一般杀死进程后,windows会自动刷新的。,<br>就好像你在进程管理器中一样,。如果右下角的图标不消失,<br>你把鼠标移过去,它就会消失的。
 
后退
顶部