WindowsService - 开发遇到的问题
1、Windows服务安装
通过cmd运行指令安装Windows服务:
安装方法:运行cmd,以InstallUtil.exe 来运行 Windows服务程序。
如果是Release模式的话,直接在cmd窗口粘贴指令 C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe "D:\Project Files\MailSendAuto\MailSendAuto\bin\Release\MailSendAuto.exe"
如果是Debug模式的话,直接在cmd窗口粘贴指令 C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe "D:\Project Files\MailSendAuto\MailSendAuto\bin\Debug\MailSendAuto.exe"
其中“v4.0.30319”是根据Windows Service程序集版本而定,另外还有v3.5、v3.0、v2.0.50727等等
问题列表(Win8 + Visual Studio 2010):
错误提示1:无法打开计算机上"."服务器控制器,此操作可能需要其他特权。。。。错误消息如下:拒绝访问。。。正在执行回滚。。。安装失败,已执行回滚
解决办法:很明显应该是跟系统权限等有关。不要直接Win+R运行cmd,应该以管理员身份运行 C:\Windows\System32\cmd.exe,并执行安装指令
错误提示2:未能加载文件或程序集或他的某一个依赖项。系统找不到指定的文件。
解决办法:低级错误,粗心大意造成的后果。cmd执行的指令中,Windows服务路径 D:\...\MailSendAuto.exe 未加双引号。
2、Windows服务卸载
以管理员身份运行 C:\Windows\System32\cmd.exe ,执行指令:sc delete WinServiceTest(Windows服务名称)。
3、Windows服务调试。
用管理员身份启动Visual Studio 2010,打开Windows服务,在Debug模式下编译成功后,安装Windows服务,并启动。
然后点击 工具栏—>附加到进程,就可以在可用进程列表中找到对应的Windows服务名称,选择并附加。然后就可以断点调试了