FIX:停止或暂停托管的 Windows 服务时收到“Error 1053:The service did not respond to the start or control request in a timely fashion”(错误 1053:服务没有及时响应启动或控制请求)错误信息

文章翻译 文章翻译
文章编号: 839174 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

症状

当您停止或暂停托管 Microsoft Windows 服务时,如果该服务停止或暂停过程所花的时间比已配置的时间长,您会收到以下错误信息:
Could not stop the Windows service name service on Local Computer.
Error 1053:The service did not respond to the start or control request in a timely fashion.
注意Windows service name 是您已创建的 Windows 服务名称的占位符。

原因

ServiceBase 类直接从 Advapi32.dll 文件的 ScDispatcherLoop 中定义的 Service 命令处理程序调用 OnStop 方法。30 秒之后,如果 ScDispatcherLoop 线程未准备好从服务控制管理器接收新的服务命令,则 Windows 服务控制器会将此服务标记为“超时”。因此,就会收到此错误信息。

解决方案

要解决此问题,请获取最新的 Microsoft .NET Framework 1.1 Service Pack。有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
885055 如何获取 Microsoft .NET Framework 1.1 Service Pack 1

状态

Microsoft 已经确认这是在“适用于”一节中列出的 Microsoft 产品中存在的问题。 此问题首先在 Microsoft .NET Framework 1.1 Service Pack 1 中更正。

更多信息

重现此问题的步骤

  1. 创建一个 Windows 服务项目。为此,请按照下列步骤操作:
    1. 使用 Microsoft Visual Basic .NET 创建一个 Windows 服务项目。将该 Windows 服务命名为 SampleWS。
    2. 在 SampleWS 的“属性”窗口中,将 CanPauseAndContinue 属性、CanShutDown 属性和 CanStop 属性设置为 True
    3. ServiceName 属性设置为 SampleWS
    4. 在 Service1.vb 文件的代码视图中,在该文件开头添加以下代码以便将 System.Threading 名称空间导入此项目中。
      导入 System.Threading
    5. OnPause 方法添加到 Service1.vb 文件中。
    6. 将以下代码添加到 OnStop 方法和 OnPause 方法中。
      Thread.Sleep(40000)
    7. ServiceProcessInstaller1 安装程序和 ServiceInstaller1 安装程序添加到 SampleWS 项目中。
    8. ServiceProcessInstaller1 安装程序的“属性”窗口中,将 ServiceProcessInstaller1 安装程序的 Account 属性设置为 LocalSystem
    9. ServiceInstaller1 安装程序的“属性”窗口中,将 StartType 属性设置为 Automatic
    10. 生成 SampleWS 应用程序。
  2. 创建一个 Setup 项目,然后将 SampleWS 应用程序的输出添加到该 Setup 项目中。
  3. 生成 SampleWS 解决方案。
  4. 找到 Setup1.msi 文件。此文件位于步骤 2 中创建的 Setup1 项目文件夹中。
  5. 双击“Setup1.msi”文件以安装 SampleWS Windows 服务。
  6. 单击“开始”,单击“运行”,在“打开”框中键入 services.msc,然后单击“确定”。Microsoft 管理控制台 (MMC) 管理单元“服务”随即打开。
  7. 在右窗格中,找到 SampleWS 服务,然后启动此服务。
  8. 停止或暂停 SampleWS 服务。
您会遇到“症状”一节中提到的问题。

有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
824684用于描述 Microsoft 软件更新的标准术语说明

参考

有关如何创建 Windows 服务的详细信息,请访问以下 Microsoft Developer Network (MSDN) 网站:
http://msdn.microsoft.com/zh-cn/library/aa983583(VS.71).aspx
注意:本篇“快速发布”文章是从 Microsoft 支持组织直接创建的。 文中包含的信息按原样提供,用于响应紧急问题。 由于发布仓促,材料可能包含印刷错误,并且可能随时修订,恕不另行通知。 有关其他注意事项,请参阅使用条款

属性

文章编号: 839174 - 最后修改: 2013年10月30日 - 修订: 1.0
这篇文章中的信息适用于:
  • Microsoft .NET Framework 1.1
关键字:?
kbqfe kbhotfixserver kbnetframe110sp1fix kbserviceprocess kbservice kbbug kbfix kbnetframe110presp1fix KB839174
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com