2011-06-27 143 views
0

我寫了一個windows服務,這是軟件的一部分,我在windows server 2003和2008上都部署了這個服務,客戶聯繫我抱怨說當他們重啓服務器時,他們不停地重啓,這發生在兩個有兩個不同客戶機的機器,最後配置好的服務器重新啓動服務器,服務器啓動,我連接到一臺服務器並運行進程監視器,啓用了啓動日誌記錄,然後再次安裝了我的服務,問題再次出現,啓動系統與最後良好的配置工作,看着啓動日誌顯示服務工作正常,沒有什麼奇怪的,我決定安裝一個虛擬機,並嘗試重複的行動,當我這樣做時,我發現虛擬機,達到登錄然後經理幾秒鐘後重新啓動,它會一直這樣做,直到我以最後的良好配置啓動機器,有沒有機會登錄並運行進程監控器,有什麼建議如何跟蹤這個問題?任何sysinternals工具可以幫助?跟蹤系統重啓

由於提前,

回答

0

其他人可能會提出一些很好的工具,但如果所有的失敗,你可以做的是寫一個字符串追加參數一些文本文件,你的服務中的一個函數,然後調用該函數在tge服務啓動代碼的每一行(或每n行)之後遞增一個數字。然後重複你的測試。重新啓動後,檢查該文件,它會準確告訴你什麼行導致計算機重新啓動。您可以查看代碼以找到原因或在此發佈有問題的代碼,並且人們可以更好地幫助您。

+0

yes,我明白你在說什麼,但是我的服務成功退出並且啓動過程繼續進行,我的服務在啓動時嘗試連接到某個套接字服務器,並且失敗,並基於它清理並退出,可以看到發生的一切。所以對服務毫無疑問。 –

+0

沒有看開機日誌或代碼,很難說,但這裏有其他的東西可以嘗試:1)去服務的屬性,並確保它沒有設置爲第一次失敗時重新啓動計算機2)檢查啓動日誌與您的服務禁用,然後啓用服務的任何差異3)將服務更改爲「手動」從自動啓動開始,然後嘗試在計算機啓動後手動啓動以查看是否有任何線索錯誤消息或日誌4)如果全部失敗,您可以評論大多數代碼,然後逐步取消註釋代碼,直到問題發生 – devsh

+0

感謝devsh,是的,我得到了這個,但正如我所說我運行進程監視器,我的服務運行並嘗試連接到一個套接字服務器然後成功退出,沒有任何與服務器代碼相關的服務器重新啓動,我一直跟蹤進程監視器中的動作,但沒有任何東西顯示爲異常,窗口登錄出現少數然後它重新啓動,沒有機會記錄和運行進程監視器,但是我正在尋找的是一種遠程連接類似進程監視器幾秒鐘的方式,但是,如果出現故障,它應該出現在事件查看器 –