Win32:如何枚举子进程?
在 Win32 下枚举当前正在运行的进程的子进程的最佳方法是什么?我可以想到几种方法来做到这一点,但它们似乎过于复杂和缓慢。以下是该解决方案的要求:
- 具体来说,我需要知道当前是否有任何正在运行的进程是由当前进程启动的。
- 将在 WinXP 上运行并且不需要分发特殊的 DLL。
- 不应需要大量 CPU 开销(它将定期在后台运行)。
- 我最终将在 Delphi 中编写此内容,但我可以从您拥有代码的任何语言进行转换。大多数情况下,我正在寻找最有效的 Win32 API 集来使用。
谢谢!
What's the best way to enumerate the child processes of the currently running process under Win32? I can think of a couple of ways to do it, but they seem overly complicated and slow. Here's the requirements for the solution:
- Specifically I need to know if any there are any processes currently running which were started by the current process.
- Will be running on WinXP and should not require distributing special DLL's.
- Should not require a lot of CPU overhead (it will be running periodically in the background).
- I'll eventually be writing this in Delphi, but I can convert from whatever language you have the code in. Mostly I'm looking for the most efficient set of Win32 API's to use.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 toolhelp API
并使用
http://www.codeproject.com/KB/ 循环线程/processes.aspx
编辑delphi
You could use the toolhelp API
And loop using
http://www.codeproject.com/KB/threads/processes.aspx
EDIT delphi