vs2013创建、安装、调试Windows Service程序

原创 2015年07月10日 14:49:10

Windows服务以服务的形式运行,有些情况下非常有用。用VS2013创建windows服务的过程如下:

创建服务。

1、文件-》新建-》项目-》windows桌面-》windows服务,修改你要的项目名称。我这不改名,仍叫WindowsService1,确定。


2、产生的项目文件结构如图所示。右侧的Program.cs文件是入口,Service1.cs是服务文件,所有的逻辑都在这。Service1.cs包含两部分,一部分是Designer,可以在这里面添加各种组件。一部分是后台文件,里面可以写一些逻辑,默认包含3个方法:构造函数、OnStart和OnStop,还可以添加OnPause和OnContinue方法。


3、修改Service1.cs文件如下(可以自行添加一些逻辑代码)

namespace WindowsService1
{
    public partial class Service1 : ServiceBase
    {
        public Service1()
        {
            InitializeComponent();
            //服务初始化时相关代码。
            base.ServiceName = "KangryTest";    //设置服务名称,与后面的安装服务名称要一致
        }

        protected override void OnStart(string[] args)
        {
            //服务启动时相关代码。
        }

        protected override void OnStop()
        {
            //服务关闭时相关代码。
        }
    }
}
4、双击Service1.cs文件,进入设计页面,对着空白处右键-》添加安装器。

5、在安装器的设计界面,出现两个组件。点击serviceProcessInstaller1,在右下角的属性栏中,将Account修改为LocalSystem


6、选中ServiceInstaller1,右下角的属性框中,将ServiceName修改成第3步的ServiceName,其他自行选择。DelayedAutoStart表示开机后是否延迟启动。Description表示服务的描述,DisplayName表示服务显示名称。ServicesDependedOn表示依赖的服务项。StartType表示启动类型,分为自动启动,手动启动和禁用。


安装服务

7、项目右键,编译。将bin/debug的文件拷贝到一个文件夹中(假设名字为WindowsServiceTest)。从C:\Windows\Microsoft.NET\Framework\v4.0.30319中拷贝installutil.exe文件到WindowsServiceTest中。在该文件夹中用记事本分别建立两个文件install.bat和uninstall.bat文件,内容分别如下:

install.bat

%~dp0InstallUtil.exe %~dp0WindowsService1.exe
pause
uninstall.bat

%~dp0InstallUtil /u %~dp0WindowsService1.exe
pause

注意前每个命令前要加一个%~dp0,表示将目录更改为当前目录。倘若不加,可能会出错。

8、对着install.bat右键,以管理员方式运行。window8.1中(其他版本未知),以管理员方式运行,默认的目录在C:\Windows\system32下。
9、win+R-》输入services.msc,确定-》找到你在第六步输入的DisplayName,我这里是KangryTestDisplayName。


调试服务

10、调试-》附加到进程


11、选择你的进程,点击附加到进程,然后就可以像普通程序一样进行断点调试了。


卸载服务。

12、右键第7步创建的uninstall.bat附件,以管理员方式运行,便可删除。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C# VS 2010 创建、安装、调试 windows服务(windows service)

在一个应用程序中创建多个 windows 服务的方法和 1083 错误的解决方法法 添加‘服务安装成功’后自启动功能 ------------------------------------...
  • xxj_jing
  • xxj_jing
  • 2012年05月07日 15:37
  • 13760

VS 2013 调试程序,拒绝访问

是权限的问题 解决办法: 网上搜索答案 以管理员身份运行vs关闭UAC 我的问题。可以直接运行但不能调试 解决办法 :  重启!!!...

VS中调试Windows服务

目前项目中需要在客户服务器安装一个程序,让我们的服务器可以调用几个客户的存储过程。 我想做一个exe文件,让用户安装就好,安装过后程序不在前台启动。 度娘教我原来要用windows服务,但是过程中...

VS2013写window服务,实现定时短信功能

http://www.cnblogs.com/fong/p/5137685.html 好久没来了,说要写博的,但人懒……一直没写过。最近做一个功能,这样的可能以后很少用到,时...

MVC+WCF实现视频播放的顶和踩功能

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码...

Vs2012调试本地windows服务

背景:         在我的工作经历中,我用到了一个我们以前学习中没有接触过的老东西—服务。之所说以前没有接触过,是因为自己没有系统的研究过这东西;之所以又说它是老东西,是因为我们其实早就知道他的...

用VS(c#)创建、调试windows service以及部署卸载

http://www.cnblogs.com/limei/archive/2010/07/06/1772332.html 用VS(c#)创建、调试windows service以及部署卸载同事问到wi...

Windows7下VS2013+WDK8.1开发WDF驱动程序全过程

1. 安装软件 下载安装VS2013+WDK8.1软件,安装完成后两个软件会自动整合到一起,不需要额外的配置。 2. 开发WDF驱动 打开VS2013,“文件”-“新建“- ”项目“,在左边选择...

vs2010 编写windows service 服务程序

转至:http://blog.sina.com.cn/s/blog_5cf5e7c4010149sg.html  File-New-Project编写windows service 服务程序" ...
  • plfl520
  • plfl520
  • 2012年08月15日 23:00
  • 1801

Windows程序的打包,部署(vs项目打包vs2013)

(说明:全文转载自)   Windows 应用程序在开发完成之后,如何将程序打包并制作成安装程序在客户机上部署             是每个windows应用程序开发完成之后都必须面对的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:vs2013创建、安装、调试Windows Service程序
举报原因:
原因补充:

(最多只允许输入30个字)