1、新建一个windows服务程序。



2、点击这个服务类,从工具箱中加入一个Timer控件,右键这个Timer控件 命名为 timerOrderDeductionDetailJob,Enable设为True。





3、右键这个服务类,在OnStart方法中设置Timer控件的启动间隔时间。

        protected override void OnStart(string[] args)
{
// TODO: 在此处加入代码以启动服务。 this.timerOrderDeductionDetailJob.Interval = 1000;
}

4、双击Timer时间控件,注冊一个事件

        private void timerOrderDeductionDetailService_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
        { 
     Working();//运行的方法
        }

5、运行的方法

       private void Working()
{ new ExceptionHelper().WriteLog("Start OrderDeductionDetailJob Job " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), @"OrderDeductionDetailJob" );
this.timerOrderDeductionDetailJob.Enabled = false; try
{
OrderDeductionDetailJob Order = new OrderDeductionDetailJob();
Order.Execute();
}
catch (Exception ex)
{
StringBuilder sbError = new StringBuilder();
sbError.Append("错误时间:" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + Environment.NewLine);
sbError.Append("错误文件:" + ex.Source + Environment.NewLine);
sbError.Append("错误信息:" + ex.Message + Environment.NewLine);
sbError.Append("引发错误的方法:" + ex.TargetSite + Environment.NewLine);
sbError.Append("引发错误的跟踪:" + ex.StackTrace + Environment.NewLine);
new ExceptionHelper().WriteLog(sbError.ToString(), @"OrderDeductionDetailJob");
} this.timerOrderDeductionDetailJob.Enabled = true;
new ExceptionHelper().WriteLog("End OrderDeductionDetailJob Job " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), @"OrderDeductionDetailJob");
new ExceptionHelper().WriteLog("* * * * * * * * * * * * * * * * * * * * * * * * *" + Environment.NewLine + Environment.NewLine + Environment.N ewLine, @"OrderDeductionDetailJob");
}

6、加入服务的安装程序,点击这个服务类,右键加入安装程序。



7、点击这个安装程序类。

8、改变安装服务名称。StartType改为Automatic。



9、serviceProcessInstaller1  右键属性 Account改为LocalSystem。



10、编译这个服务,安装。安装方法分为两种:

     (1)、windows+R (执行命令提示符)。输入cmd

执行命令:       C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe   (空格) window项目的bin\Release下.exe文件地址

比如:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe (空                    格) F:\chenfeilong\Project\AidaijiaWin\ADJ.Job.OrderDeductionDetailService\bin\Release\ADJ.Job.OrderDeductionDetailService.exe

(2)、sc create 服务名称 binPath=(空格)  “windows服务项目的bin\Release下.exe文件地址”   start=auto

11、卸载windows服务:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe  
-u  window项目的bin\Release下.exe文件地址

C# 创建、安装和卸载Windows服务程序的更多相关文章

  1. 安装和卸载windows服务程序

    安装window服务 安装命令:InstallUtil.exe MyServiceLog.exe InstallUtil存在路径为:C:\WINDOWS\Microsoft.NET\Framework ...

  2. C#Windows Service程序的创建安装与卸载

    C#Windows Service程序的创建安装与卸载 一.开发环境 操作系统:Windows7x64 sp1 专业版 开发环境:Visual studio 2013 编程语言:C# .NET版本: ...

  3. C#创建安装、卸载部署程序

    分享3: 需求:对已经开发的应用程序进行安装封装操作,即创建安装.卸载部署程序: 分析:程序的开发是为了在不同的人在不同的机器上使用,为了使不同机器使用该软件就需要见程序安装包,并且保证安装包中必须包 ...

  4. C# 远程服务器 安装、卸载 Windows 服务,读取远程注册表,关闭杀掉远程进程

    这里安装windows服务我们用sc命令,这里需要远程服务器IP,服务名称.显示名称.描述以及执行文件,安装后需要验证服务是否安装成功,验证方法可以直接调用ServiceController来查询服务 ...

  5. 安装sqlserver 的时候 报错:无法通过Windows功能控制面板自动安装或卸载Windows Server 角色和功能。

    无法安装以下功能:.NET Framework 3.5(包括.NET2.0和3.0) 无法通过Windows功能控制面板自动安装或卸载Windows Server 角色和功能. 若要安装Windows ...

  6. C# 安装和卸载 Windows Service

    特别注意: 安装Window Service 的时候,一定要用管理员打开命令提示符(cmd) 1. 创建Windows Service 服务项目 2. Service设计界面:右键-->选择安装 ...

  7. 安装和卸载windows程序

    安装windows service通常有两种工具 1.Framework目录下的installutil.exe工具.2.visual studio命令行工具 在这里我要说的是当我们使用的系统是64位的 ...

  8. 使用InstallUtil安装及卸载Windows服务的具体操作 Visual Studio 2012版本

    关于Visual Studio 2012中使用InstallUtil对Windows服务进行安装与卸载的文章,在MSDN中的http://msdn.microsoft.com/en-us/librar ...

  9. 批处理文件安装与卸载Windows服务

    //安装Windows服务 将RECPost.exe和RECPostService替换成自己的项目名称和服务名称,并将文件保存成bat格式.其中%cd%是获取相对路径 @echo off set fi ...

随机推荐

  1. 函数fsp_alloc_seg_inode

    从inode page中申请inode entry inode = fsp_alloc_seg_inode(space_header, mtr); /************************* ...

  2. .woff 文件404,配置到web.config

    <staticContent>        <remove fileExtension=".woff" />        <mimeMap fil ...

  3. compass和sass很好的两篇文章

    Sass是一种"CSS预处理器",可以让CSS的开发变得简单和可维护.但是,只有搭配Compass,它才能显出真正的威力. 本文介绍Compass的用法.毫不夸张地说,学会了Com ...

  4. NOI2003 逃学的小孩

    这一题不会做啊…… 我觉得真要比赛的话我可能会随机上几万次,然后再用LCA求距离,更新最优值,等到快超时的时候输出答案…… 题解请看2007年陈瑜希论文 代码: ; type node=record ...

  5. maven pom.xml加载不同properties配置

    1.pom.xml =========================== <!-- 不同的打包环境配置: test=开发/测试测试环境,  product=生产环境; 命令行方式: mvn c ...

  6. 用TIMESTAMP类型取代INT和DATETIME

    时间在我们开发中应用非常普遍,大部分开发中我们将用Mysql的datetime格式来存储,但是对于经常用时间来排序或者查询的应用中,我们要将时间做成索引,这个就跟查询效率很有关系,但是很多程序员会用i ...

  7. 根据IP地址查询所在地

    using System; using System.Collections.Generic; using System.Text; using System.IO; using System.Tex ...

  8. HDU 4237 The Rascal Triangle

    The Rascal Triangle Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Othe ...

  9. 变形虫mysql的负载均衡 读写分离

    变形虫概述 图片来自   http://docs.hexnova.com/amoeba/amoeba-products.html  文档上说也可以做mongdb的分布式. 应用: 具有负载均衡.高可用 ...

  10. tar常用解包

    (1)常见解压缩包 .tar解包 tar -xvf  xxxx.tar 打包 tar -cvf xxxx .tar.bz2解包 bzip2 -d  xxxx.tar.bz2        #会解压成. ...