簡體   English   中英

調試停止Windows服務

[英]Debugging Stopping a Windows Service

我正在使用以下命令在VS2010中調試Windows服務:

static void Main()
{
    #if (DEBUG)
        var s1 = new Service1();
        s1.Start();
        Thread.Sleep(Timeout.Infinite);
    #else
        ServiceBase.Run(new ServiceBase[] 
            { 
                new Service1() 
            });
    #endif
}

這使我可以在調試器中運行服務。 問題在於,啟動后,該服務會打開WCF通道,在我通過停止調試終止該進程之后,該通道似乎占用了套接字。 當我停止調試或服務停止時,如何關閉此套接字。 我嘗試在服務析構函數以及OnStopOnShutdown方法中設置斷點,但是沒有調用它們。

據我所知,當您在Visual Studio中結束調試時,該過程只是在沒有調用終結器的情況下被殺死,甚至位於finally塊中的代碼也不會執行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM