windows 8.1 64位PC,Visual Studio 2013 Ultimate,C# .NET 4.0,环境下编写windows服务,亲测成功!

来源:互联网 发布:淘宝一件代发供货平台 编辑:程序博客网 时间:2024/05/16 12:33

具体过程比较曲折,说起来图文并茂至少要一个小时。

我大致描述一下过程,具体细节晚点再加或不加。

---

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.

上下的事都好办啦。


1 0