1、新建项目

打开VS—>文件—>新建—>项目—>Visual C#—>Windows—>Windows服务->起个名儿—>确定  (如图)

  2、添加Timer组件

从工具箱—>"组件"下拉列表中拖动一个Timer控件到设计视图上

注意:看看这个Timer控件的属性中的命名空间是什么,如果是System.Timers.Timer那就对了;如果是System.Windows.Froms.Timer那就错了(用这种Timer则服务运行时不会执行我们编写的代码)。解决方法:删除这个Timer;在工具箱上的组件列表上右键,单击”选择项”出现”选择工具箱项”对话框,然后在.net Framwork选项卡下找到命名空间为System.Timers的那个Timer控件,钩选确认即可.这时新的Timer控件出现在了工具箱的组件列表中(如图)。现在拖动一个Timer控件到设计表面上。

  3、设置Timer属性,主要是设置Interval属性(单位为毫秒),即间隔多少时间执行服务


  4、双击Timer进入代码视图,在事件方法里添加我们要执行的代码

private void timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e)

{
  //服务运行要执行的代码

}

例如:我要每一分钟在我的数据库test下的testservice表中插入一条记录,则可以将Timer的Interval属性设置为1000,并在Elapsed方法下加入以下代码:

SqlConnection conn = new SqlConnection("server=192.168.1.143;database=test;uid=sa;pwd=123");

SqlCommand comm = new SqlCommand("insert into testservice(number) values('china')", conn);

conn.Open();

comm.ExecuteNonQuery();

conn.Close();

另外,可以在OnStart和OnStop方法中加入对Timer的控制

protected override void OnStart(string[] args)
{

// TODO: 在此处添加代码以启动服务。

this.timer1.Enabled = true
 }

protected override void OnStop()

{

// TODO: 在此处添加代码以执行停止服务所需的关闭操作。

this.timer1.Enabled = false;

}


  5、将这个服务程序切换到设计视图,右击设计视图选择“添加安装程序”,VS将自动添加两个控件:serviceProcessInstaller1和serviceInstaller1
。接下来设置两个控件的属性,主要设置:

1)serviceInstaller1的ServiceName属性(即你的服务的名称)

2)serviceInstaller1的StartType属性设置为Automatic(自动)

3)serviceProcessInstaller1的Account属性设置为:LocalSystmem

  6、编译生成EXE文件(在bin\debug\下)

  7、注册我们创建的服务

命令行形式调用 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727目录下的InstallUtil.exe 来注册我们项目中bin\debug目录下的服务程序

注意:调用时注意路径一定要正确,比如:我的调用如下:

C:\>C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe  C:\FirstWindowsService\FirstWindowsService\bin\Debug\FirstWindowsService.exe  回车
(如图)

8、现在,你可在控制面板-管理工具-服务下看到你的服务了(先刷新一下,即可看到)并且可以看到其执行效果。

注意:如果你修改了这个服务,但路径没有变化的话是不需要重新注册服务的,只需要先暂停服务,重新生成exe,再启动服务;如果路径发生了变化,需要先卸载这个服务(使用InstallUtil.exe /u 命令,注意路径),然后再重新注册这个服务,

转载于:https://www.cnblogs.com/ruiyi1987/archive/2009/07/30/1535291.html

Visual Studio 2005 创建Windows服务程序(C#)相关推荐

  1. 【OpenGL】一、Visual Studio 2019 创建 Windows 桌面程序 ( Visual Studio Installer 安装 C++ 桌面开发库 | 创建桌面程序 )

    文章目录 一.Visual Studio Installer 安装 C++ 桌面开发库 二.Visual Studio 2019 创建 Windows 桌面程序 之前曾使用 Visual Studio ...

  2. 【Visual Studio】Visual Studio 2019 创建 Windows 控制台程序 ( 安装 ‘使用 C++ 的桌面开发‘ 组件 | 创建并运行 Windows 控制台程序 )

    文章目录 一.安装 C++ 桌面开发组件 二.创建并运行 Windows 控制台程序 一.安装 C++ 桌面开发组件 打开 Visual Studio Installer , 点击 " 修改 ...

  3. [转]Visual Studio 2005创建VC++智能设备项目失败的解决方法

    从别的地方转载的,原文http://blog.myspace.cn/e/401633788.htm If you've tried to create a smart device Win32 pro ...

  4. Visual Studio 2005详细讲解!

    本C#项目案例主要是使用Visual Studio 2005创建C++和C#混合项目的方法,涉及C#智能设备项目和C++智能设备项目. 通过P/Invoke我们可以充分利用已有的非托管资源,使用非托管 ...

  5. WSSv3 Technical Articles_使用Visual Studio 2005扩展创建Windows SharePoint Services 3.0 Web Part...

    WSSv3 Technical Articles_使用Visual Studio 2005扩展创建Windows SharePoint Services 3.0 Web Part 摘要:学习使用Mic ...

  6. 用Visual C#创建Windows服务程序

    一.Windows服务介绍: Windows服务以前被称作NT服务,是一些运行在Windows NT.Windows 2000和Windows XP等操作系统下用户环境以外的程序.在以前,编写Wind ...

  7. Visual C#创建Windows服务程序

    转自:http://www.vchome.net/dotnet/dotnetdocs/dotnet38.htm 一.Windows服务介绍: Windows服务以前被称作NT服务,是一些运行在Wind ...

  8. 在Visual Studio 2005里,用ActiveSync来同步模拟器(Windows Mobile 5.0 )

    一.前期环境搭建     1.Windows Mobile5.0模拟器安装步骤以及下载地址,如下: http://news.csdn.net/news/newstopic/22/22102.shtml ...

  9. [翻译]使用C#创建SQL Server的存储过程(Visual Studio 2005 + SQL Server 2005)

    原文地址:http://www.dotnetbips.com/articles/70eff218-3da0-4f6f-8f8d-eeea65193f2c.aspx[原文×××] [翻译]使用C#创建S ...

最新文章

  1. 用算法改造过的植物肉,有兴趣试试么?
  2. 比特币要升级成为“比特币现金”
  3. 【原创视频教程】学生信息管理系统5--学员成绩管理
  4. Android -- 使用inBitmap要注意的地方
  5. .Net Discovery 系列之九--string从入门到精通(勘误版下)
  6. grub4dos初级教程-入门篇
  7. TZOJ 1321 Girls and Boys(匈牙利最大独立集)
  8. Python 检测字符串开始值String.StartsWith 方法
  9. 浪潮服务器2016销售额,Gartner:2016年前三季度浪潮服务器销售额中国第一
  10. 绿色网格称其IT环境评估工具取得成功
  11. 锐捷S12010交换机配置端口镜像
  12. SLAM入门之数学基础
  13. pythonstdin_Python读取stdin方法实例
  14. Swift --- 扩展(Extention)
  15. MQ消息队列中间件:
  16. JS 每日一题 #13
  17. 详解randn函数及 randn('state')
  18. python爬取小说爬取_用python爬取笔趣阁小说
  19. 全志r58能使用linux内核么,全志R58怎么样 R58芯片参数介绍
  20. 1244:和为给定数

热门文章

  1. Android移动开发之【Android实战项目】Textview各项属性(全)
  2. delphi oracle新建用户,Delphi 中如何用另外一个用户的身份来运行一人程序
  3. java packetmaster_TCP中间件_java_server
  4. 博途数据类型wstring怎么用_如何在STEP 7 (TIA 博途)中使用“用户定义数据类型” (UDTS)...
  5. python和软件自动化_软件测试和自动化测试
  6. (2)搞一搞 seata 之 Spring Cloud 整合
  7. 最新EOS合约教程,从系统到环境,从创建到部署,从前端到后台,Dapp开发
  8. 网站优化该做好哪些细节才能更有力的吸引蜘蛛?
  9. java判断时间是不是星期五_Java判断当前日期是星期几
  10. centos7执行sh文件_一文看懂centos7如何管理自定义脚本服务