0

尝试用VS 2012创建windows服务。默认情况下,服务有3种方法:

Constructor(say MyService)
OnStart
OnStop

但是当我在构造函数中放入一些代码时,看起来它只运行了一次。

我想要的是:当一个应用程序从 Windows 启动时,例如 notepad.exe,我可以捕获它。我应该在构造函数中放置一个死循环来监视进程列表吗?我认为服务应该总是像死循环一样。那么当一个应用程序启动它时,如何在 MyService 中捕获它呢?

4

1 回答 1

0

我应该在构造函数中放置一个死循环来监视进程列表吗?

不,那进去了OnStart()。基本伪代码为:

  • 开始:
    • 设置监控
    • 启动它
  • 监控:
    • while (true) 监控进程
    • 如果(停止信号)退出
  • 停车
    • 向监控对象发出停止信号
于 2012-12-12T16:40:39.887 回答