在Windows中监视进程

时间:2009-08-13 21:41:57

标签: windows windows-services monitoring process

如果Windows进程未运行,我如何监控它并启动它?我希望能够以Windows服务的形式启动并处理多个进程。

修改 希望有一个随时可以使用的库/组件,只需调整或配置,而不必从头开始实现它。我知道在* nix世界中有两个受欢迎的软件包:god和monit。

1 个答案:

答案 0 :(得分:4)

您可以创建仅监视当前进程列表的Windows服务。

EnumProcesses提供了查看当前正在运行的进程的方法。有许多API可用于启动新流程,包括:

  • 系统()
  • _exec()
  • 的WinExec()
  • 的ShellExecute()/的ShellExecuteEx()
  • 的CreateProcess()
  • CreateProcessAsUser()
  • CreateProcessWithLogonW()

如果您正在使用其他语言/框架,他们通常会提供自己的包装器。