當前位置:歷史故事大全網 - 歷史天氣 - 如何:調試 Windows 服務應用程序

如何:調試 Windows 服務應用程序

若要調試服務,必須首先啟動服務,然後將壹個調試器附加到正在運行服務的進程中。然後可以使用 Visual Studio 的所有標準調試功能來調試應用程序。例如,如果附加到 WinLogon 進程,然後停止調試,系統就會暫停,因為沒有 WinLogon,系統無法運行。只能將調試器附加到正在運行的服務。附加進程會中斷服務的當前運行;它並不真正終止或暫停服務的處理。也就是說,如果開始調試時服務正在運行,則在進行調試時,該服務從技術上說仍處於“已啟動”狀態,但它的處理已掛起。附加到服務的進程使您能夠調試大多數服務代碼,但並非全部;例如,由於服務已經啟動,因此不能用這種方法調試服務的OnStart方法中的代碼,或調試用於加載服務的Main方法中的代碼。解決此問題的壹個方法是:在唯壹作用是幫助調試的服務應用程序中創建壹個臨時服務。可以將兩個服務都安裝上,然後啟動此“虛擬”服務加載服務進程。臨時服務啟動了進程後,就可以使用 Visual Studio 中的“調試”菜單來附加到服務進程。當附加該進程之後,可以設置斷點並使用這些斷點來調試代碼。當退出用於附加到該進程的對話框時,實際上已處於調試模式。您可以使用“服務控制管理器”開始、停止、暫停和繼續您的服務,因此命中已設置的斷點。調試成功後,移除此“虛擬”服務。說明調試OnStart方法可能比較困難,因為 Windows 服務管理器將所有嘗試啟動服務的時間限制在 30 秒內。有關更多信息,請參見

  • 上一篇:關於黑白棋高級問題滿意的話繼續加分
  • 下一篇:數字電路求答案
  • copyright 2024歷史故事大全網