文章編號: 839174 - 上次校閱: 2006年4月17日 - 版次: 2.1

FIX:停止或暫停管理 Windows 服務時,收到「錯誤 1053:服務並未及時回應啟動或控制要求」錯誤訊息

系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。

在此頁中

全部展開 | 全部摺疊

徵狀

當您嘗試停止或暫停管理 Microsoft Windows 服務時,停止或暫停服務的程序比預設時間耗費更久的時間,而且收到下列錯誤訊息:
Could not stop the Windows service name service on Local Computer (無法停止本機電腦上的 Windows service name)。
錯誤 1053:服務並未及時回應啟動或控制要求。
注意 Windows service name 是指您所建立的 Windows 服務名稱的預留位置。

發生的原因

ServiceBase 類別直接以 Service 命令處理常式呼叫 OnStop 方法,該命令處理常式是由 Advapi32.dll 檔的 ScDispatcherLoop 提供定義。30 秒之後,如果 ScDispatcherLoop 執行緒尚未準備好要從服務控制管理員接收新的服務命令,Windows 服務控制器就會將該服務標示為「逾時」。 因此,您就會收到這項錯誤訊息。

解決方案

如果要解決這個問題,請取得最新版的 Microsoft .NET Framework 1.1 Service Pack。如需詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
885055? (http://support.microsoft.com/kb/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 的 [屬性] 視窗中,將 CanPauseAndContinueCanShutDownCanStop 等屬性都設定為 True
    3. ServiceName 屬性設定為 SampleWS
    4. 在 Service1.vb 檔案的 [程式碼檢視] 中,於檔案開頭加入下列程式碼,將 System.Threading 命名空間匯入專案中。
      Imports System.Threading
    5. 在 Service1.vb 檔案中新增 OnPause 方法。
    6. 將下列程式碼加入 OnStop 方法及 OnPause 方法中。
      Thread.Sleep(40000)
    7. 在 SampleWS 專案中新增 ServiceProcessInstaller1 安裝程式和 ServiceInstaller1 安裝程式。
    8. ServiceProcessInstaller1 安裝程式的 [屬性] 視窗中,將 ServiceProcessInstaller1 安裝程式的 Account 屬性設定為 LocalSystem
    9. ServiceInstaller1 安裝程式的 [屬性] 視窗中,將 StartType 屬性設定為 Automatic
    10. 建置 SampleWS 應用程式。
  2. 建立安裝專案,然後再將 SampleWS 應用程式的輸出新增到安裝專案中。
  3. 建置 SampleWS 方案。
  4. 找到 Setup1.msi 檔。這個檔案位於步驟 2 所建立的 Setup1 專案資料夾中。
  5. 按兩下 Setup1.msi 檔案,安裝 SampleWS Windows 服務。
  6. 按一下 [開始],再按一下 [執行],然後在 [開啟] 方塊中輸入 services.msc,再按一下 [確定]。Microsoft Management Console (MMC) 嵌入式管理單元服務便會開啟。
  7. 在右邊窗格中找到 SampleWS 服務,然後啟動該項服務。
  8. 停止或暫停 SampleWS 服務。
您會發現<徵狀>一節所描述的問題出現了。

如需詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
824684? (http://support.microsoft.com/kb/824684/ ) 用來描述 Microsoft 軟體更新的標準術語說明

?考

如需有關如何建立 Windows 服務的詳細資訊,請造訪下列 Microsoft Developer Network (MSDN) 網站:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon/html/vbconcreatingntserviceapplications.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon/html/vbconcreatingntserviceapplications.asp)

這篇文章中的資訊適用於:
  • Microsoft .NET Framework 1.1
關鍵字:?
kbbug kbfix kbserviceprocess kbqfe kbservice kbnetframe110sp1fix kbnetframe110presp1fix kbhotfixserver KB839174
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。