在C ++中将可执行文件作为服务运行

时间:2015-06-02 12:43:46

标签: c++ windows service exe msvc12

我使用Win32Console创建了一个MSVS2013应用程序,并且已成功编译。现在我尝试使用CreateService创建服务,并将二进制路径设置为上面生成的可执行文件的路径。虽然我能够创建服务,但我无法使用StartService启动它。每次都会抛出错误代码1053。我尝试使用sc.exe,并尝试从Services手动启动服务。显示相同的错误。我现在该如何解决?

2 个答案:

答案 0 :(得分:0)

您必须创建ServiceMain Here is a sample
如果要执行非服务应用程序,可以使用psexec

答案 1 :(得分:0)

您与SC- Manager发生冲突,并且在应用程序启动服务中遇到了功能

您要服务的功能服务分派器表的名称;) 如果不是从SC发送呼叫,则防止发生错误1053 C ++代码:

if(argc < 2)           
  {
     if(!Service_Dispatcher_Table())            
     {
       std::cout<<"ERROR :"<< GetLastError();
     }
 }
 else
 { 
     //your command line "argc" 
 }  

///这里是您的命令或功能:startservice();