很多朋友编写Windows服务的时候都会觉得调试很麻烦,甚至不知道怎么调试。有些人可能添加个windows窗体用按键触发相关方法或者靠打印日志调试,那么到底windows服务怎么调试呢?
怎么编写代码就不说了。就说调试吧,首先需要把服务部署好。
要部署的话首先需要添加安装程序,添加安装程序的步骤如下:
1、将这个服务程序切换到设计视图
2、右击设计视图选择“添加安装程序
重新生成解决方案即可。
然后把bin里的debug文件夹拷到任意位置,即可安装。
打开命令提示符,进入到.NET目录下例如:
cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319
运行安装服务命令:InstallUtil.exe E:\DrawService\Draw.Service.exe(debug文件夹下的服务名.exe路径)
输入以上命令后服务就安装好了。
打开计算机管理的服务里面就有你刚才添加的服务了,右击服务选择启动,服务就启动了。
服务启动之后,打开VS,选择调试,如图:
接下来在进程列表里选择服务的进程,点击附加就可以了,如图:
例如现在你把代码发布到IIS中的话也可以附加到iis里调试哦,只要你打开本地发布到IIS的访问URL后,列表里会有个W3wp.exe的进程就是IIS进程。如果你附加到这个进程里的话,你访问某个页面的时候如果你在代码里打了断点,进会进到断点。有个前提条件是你编译的代码必须和你发布的BIN文件夹里的代码一样,否成无法成功附加调试的。