Windows 7 bat文件无法作为服务启动

时间:2012-01-23 13:51:17

标签: windows-7 windows-services batch-file

我正在运行Windows服务,它在启动期间启动一个简单的bat文件,但该服务无法启动。如果我尝试从服务GUI手动运行它,我会收到以下错误消息。

  

错误1053:服务未及时响应启动或控制请求

这似乎是服务启动期间的常见错误,但我在其他答案中没有发现类似的问题。我使用以下命令从命令行创建了服务

C:\Users\Administrator>sc create service_name binpath= c:\service.bat start= auto
[SC] CreateService SUCCESS

然后我用

运行它
C:\Users\Administrator>sc start service_name

但是,我收到了错误消息:

  

[SC] StartService FAILED 5:

     

访问被拒绝。

如果我以管理员身份从命令提示符运行它,我不会收到拒绝访问的消息,但是我收到了1053错误。我想运行一个bat文件作为Windows服务不应该那么困难。有什么想法吗?

1 个答案:

答案 0 :(得分:7)

您收到第一个错误,因为您的批处理文件无法与Windows服务子系统协商/交互。当Windows启动服务时,操作系统会等待几秒钟,以便服务报告已正确启动。如果此信号永远不会到达(与您的批处理文件一样,它对服务一无所知),Windows将报告错误#1053。

您需要一个“包装”应用程序来将批处理文件作为服务运行。 free "SRVANY" utility from Microsoft可能适合您,但您也应该调查功能更全面的商业替代品。