我在Windows 2008上使用MSMQ。消息在專用隊列中可用。我有一個WCF用戶(用C#編寫),它被安裝爲windows服務。現在的問題是,有時WCF用戶停止從隊列中選擇消息。如果我再次重新啓動服務,它工作正常。現在我附上IError
處理程序記錄原因和異常。如何使窗口服務在出現錯誤時重新啓動
現在要處理這個問題我想要做的是,我將設置恢復屬性重新啓動服務在第一次失敗,現在的問題是如何拋出錯誤從HandleError()
方法IErrorHandler class
?
請告訴我在窗口服務中引發異常的最佳方式,以便可以重新啓動。
首先,你應該找出爲什麼服務停止選擇信息 - 這就是問題所在。也許你應該描述這種情況並詢問這個問題? –
@TadasŠukys-我不知道爲什麼它突然停止從queue.still窗口服務正在運行,當我去停止窗口服務,然後它會引發錯誤,並從Windows日誌錯誤是:無法停止服務運行選擇消息。 System.ServiceModel.CommunicationObjectFaultedException:通信對象System.ServiceModel.ServiceHost不能用於通信,因爲它處於Faulted狀態。 at System.ServiceModel.Channels.CommunicationObject.Close(TimeSpan timeout) at Microsoft.Samples.MSMQToWCF.SubscriberWindowsService.OnStop()in d:\ SubscriberWindowsService – samash
@samash參見http://stackoverflow.com/questions/4197036/what -is最合適的路換一個窗口服務到不能倒 – stuartd