如何在特定时间后重新启动窗口服务

时间:2012-06-08 07:05:29

标签: c++ visual-studio-2010 visual-c++ service

我在VS2010中使用c ++制作一个窗口服务,想知道有没有办法在特定时间后重启服务,实际上我会让用户在INI文件中写入重启时间,服务应该能够重启在那个时候。任何样本代码或任何api可用???

3 个答案:

答案 0 :(得分:3)

您可以使用_execl使用加载并执行新的子进程。

这是一个简单的代码,说明了我如何打开Notepad ++实例:

#include <process.h>

int main(){
    _execl("C:\\Program Files\\Notepad++\\Notepad++.exe", "\\0");
    return 0;
}

通过这种方式,您可以拥有另一个实际停止当前流程并再次启动流程的流程。

答案 1 :(得分:1)

添加scheduled task以调用

的批处理文件
net stop servicename
net start servicename

答案 2 :(得分:0)

StartService API可以启动Windows服务, ControlService API可以停止Windows服务。