具体过程比较曲折,说起来图文并茂至少要一个小时。
我大致描述一下过程,具体细节晚点再加或不加。
---
0. 环境见标题,不重复了。
1.学习怎样用C#写windows服务,然后轻易搜索得到各种博客文章。
特别提出的就是确实是要添加控件(右键点击如图面板,右键菜单有添加控件),然后像winform一样双击控件跳转到相关代码部分,编写具体业务逻辑。如图一。
serviceInstaller里面的一些处理还是必要的,否则安装服务的时候会出错。比如角色权限问题、安装程序缺失等造成安装失败。
2. 编写后编译服务代码,在bin/Debug文件夹下有exe文件生成,如图二。
3. 把InstallUtil.exe从本机文件夹下复制到图2的文件夹中去,这个InstallUtil.exe本身的路径大致如图3.
4. 这个时候通过cmd命令行的方式安装此服务。我在安装的过程中遇到了几个错误,不过被我机智地高效解决了。下面列举出来:
4.1 安装服务的命令,如installUtil WindowsService.exe这样的命令,提示某某文件拒绝访问之类。
后来尝试改文件夹权限之类,但很难改。
后来使用的管理员身份运行命令行即可。
4.2 解决4.1后继续尝试,结果出现如图4的错误提示。
后来搜索和思考,找到原因,最简单的办法是在Visual Studio里将服务运行角色改了。如图5.
将角色改为如图即可不弹那个需要用户名和密码才能安装服务的框。
4.3 过了4.2之后遇到的 最后一个错误提示:我输入 installUtil windowsService1.exe,提示我服务不存在。
查了之后发现尽管我的exe文件名称是这个,如图1.但实际上我的服务名不是这个。
见图6.
然后输入正确的服务名称即可。
然后就顺利地安装服务成功了。图就不上了。太麻烦。
5. 然后就启动服务,net start serviceName这样的命令。
然后在服务列表中就可以看到服务了。
太基础的操作,都不上图了。
最后如图7.
上下的事都好办啦。