在Windows 2008上运行myprogram.exe作为服务时出现问题

时间:2012-09-24 07:39:17

标签: windows windows-services

MyProgram.exe用于监听来自管道的请求并使用命令提示符,它的工作完美但我尝试使用Windows服务但不成功我尝试了在Windows Server 2008企业上执行以下步骤:

> sc create MyService binPath= "C:\test\MyProgram.exe" DisplayName= "MyProgramService"
>[SC] CreateService SUCCESS

>sc start MyService 
[SC] StartService FAILED 1053:

The service did not respond to the start or control request in a timely fashion.

reference

所以我在一个博客上看到我们需要创建相同的注册表项然后我尝试了以下步骤

  

我在以下位置找到了我新创建的服务:HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet001 \ Services \ MyService

     
      
  1. 从regedit菜单中单击名为MyService的键(它看起来像一个文件夹)。选择“edit”和“new”,然后选择“key”。这将创建一个新键,您应该将其命名为“Parameters”。接下来,右键单击刚刚命名为“Parameters”的键并选择“new”,然后“字符串值。”将值命名为“Application”。双击字符串值,将弹出一个框。在“值数据”下的框中,您需要将完整路径放入Dropbox。就我而言,路径是:C:\ test \ MyProgram.exe \ MyProgram.exe

  2.   
  3. 开始新服务。导航到控制面板管理工具中的服务列表,或者只需在运行框中键入services.msc。在列表中找到DropBox并启动它。新服务应设置为自动启动,但请随时检查确认。

  4.   

但服务开始几秒钟后终止。当我从services.msc手动启动服务时,它会给出错误

  

StartService FAILED 1053:

     

该服务未及时响应启动或控制请求。

不确定为什么有人为此工作,请指导将其作为服务。

1 个答案:

答案 0 :(得分:5)

您不能将任何EXE作为Windows服务运行。您必须拥有一个能够理解服务意义并且与Windows服务控制管理器正确通信的exe。

请参阅Microsoft文档,从http://msdn.microsoft.com/en-us/library/windows/desktop/ms686953(v=vs.85).aspx开始。