調試windows服務的OnStart方法

來源:互聯網
上載者:User

調試windows服務的OnStart方法

1.在OnStart方法內添加如下代碼

            #if DEBUG            System.Diagnostics.Debugger.Launch();            #endif

完整的代碼如下

        protected override void OnStart(string[] args)        {            #if DEBUG            System.Diagnostics.Debugger.Launch();            #endif            //add method code        }

2.在OnStart方法內打一個斷點

3.啟動服務,會命中OnStart方法內的那個斷點。

備忘:Debugger.Launch()在static void Main()中,如下

        static void Main()        {            #if DEBUG                        System.Diagnostics.Debugger.Launch();            #endif                        ServiceBase[] ServicesToRun;                        ServicesToRun = new ServiceBase[]             {                 new ServiceEmail()             };                        ServiceBase.Run(ServicesToRun); }

注意:因為許可權的問題,可能會選不到你所開啟的Visual Studio,並且會開啟一個新的Visual Studio,這個新的介面找不到代碼層,無法打斷點,解決方案是:以管理員的身份運行Visual Studio,然後再啟動服務,並在彈出選擇啟動Visual Studio的頁面,選擇你所進行調試的那個Visual Studio,千萬不要進行建立。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.