Windows Service 调试方法

        有些时候,我们需要开发windows service程序,需要进行调试,按以往的调试方法,需要先安装然后加入托管线程进行调试,而且改变一点代码就需要卸载重新安装调试,非常麻烦。

       方法如下:

      在services1.cs的main方法中添加如下代码:

    /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        static void Main(string[] args)
        {
            try
            {
                if (args.Length > 0
                    && string.Equals(args[0], "debug", StringComparison.OrdinalIgnoreCase))
                {
                    Service1 srv = new Service1();
                    srv.DebugStart();
                    System.Threading.Thread.Sleep(System.Threading.Timeout.Infinite);
                    return;
                }


                //System.ServiceProcess.ServiceBase[] ServicesToRun;


                //ServicesToRun = new System.ServiceProcess.ServiceBase[] { new Service1() };


                //System.ServiceProcess.ServiceBase.Run(ServicesToRun);
            }
            catch (Exception ex)
            {
              
            }
        }

    

       /// <summary>
        /// 用于windows service调试
        /// </summary>
        protected void DebugStart()
        {
            OnStart(null);
        }

        再进入项目属性,添加命令行参数,设置如下:

       

        这样就可以在代码段里下断点进行调试了!

        

你可能感兴趣的:(windows,C#,service,调)