1、创建一个Windows服务程序

一、   新建Window服务项目

二、   添加安装程序

三、   配置服务属性

四、   编写定时器代码

publicpartialclassService1 : ServiceBase

{

publicService1()

{

InitializeComponent();

}

protected override void OnStart(string[] args)

{

LogHelper.WriteLog("服务开始", LogType.remark);

System.Timers.Timer timer = new System.Timers.Timer();

timer.Elapsed += new System.Timers.ElapsedEventHandler(TimedEvent);

timer.Interval = 5000; //设置多久执行一次

timer.Enabled = true;

}

protected override void OnStop()

{

LogHelper.WriteLog("服务停止", LogType.remark);

}

//定时执行事件

privatevoid TimedEvent(object sender,System.Timers.ElapsedEventArgs e)

{

//编写要执行的代码

}

}

五、安装和卸载服务

然后重新生成项目,生成成功!到此,我们只是完成了服务的编写,接下来是写服务的安装、卸载文件了。

编写安装文件
点击项目右键-打开资源文件。从 C:\Windows\Microsoft.NET\Framework\v4.0.30319 找到 InstallUtil.exe 和 InstallUtil 文件,并把这两个文件拷备到项目dubug文件夹下,如下所示:

分别添加两个文件: Installer.bat 和 UnInstaller.bat (可通过文本编辑器来.txt文件,再把.txt 后缀修改为 .bat 即可,如果你电脑不显示文件后缀,自行百度显示文件后缀方法,这里我把 Installer.bat 和 UnInstaller.bat 取名为 安装服务.bat 和 卸载服务.bat)它们分别表示:服务的安装和服务的卸载,其中的内容分别是:

安装:

%~dp0InstallUtil.exe %~dp0FristService.exe
pause
卸载:

%~dp0InstallUtil /u %~dp0FristService.exe
pause
注: 开头要留 %~dp0  符号,表示将目录更改为当前目录,如果不加,可能会出错。

完成以上工作即可完成服务程序编写了,如下所示:

5、安装服务
点击安装服务,以管理员身份运行,安装成功如下所示:

此时,在电脑开始面板搜索 服务 ,打开电脑服务,如下所示:

右键服务,开启该服务,稍等几秒钟之后在 d:\test\log.txt 文件下就可以看到如下内容:

6、卸载服务
点击卸载服务,效果如下:

再打开服务,我们将看不到之前安装的服务了。到此为止,一个简单的服务程序就完成了,希望给大家带来帮助,喜欢的话关注点赞,谢谢。

创建一个Windows服务程序与实现定时器效果的更多相关文章

  1. 为MongoDB创建一个Windows服务

    一:选型,根据机器的操作系统类型来选择合适的版本,使用下面的命令行查询机器的操作系统版本 wmic os get osarchitecture 二:下载并安装 附上下载链接 点击安装包,我这里是把文件 ...

  2. C#创建一个Windows Service

    Windows Service这一块并不复杂,但是注意事项太多了,网上资料也很凌乱,偶尔自己写也会丢三落四的.所以本文也就产生了,本文不会写复杂的东西,完全以基础应用的需求来写,所以不会对Window ...

  3. tomcat创建一个windows服务

    具体步骤如下: 1.把JDK解压到C:\Program Files\Java下,Tomcat解压到D:\tomcat下 2.配置环境变量 JAVA_HOME:C:\Program Files\Java ...

  4. [翻译] 使用 .NET Core 3.0 创建一个 Windows 服务

    原文: .NET Core Workers as Windows Services 在 .NET Core 3.0 中,我们引入了一种名为 Worker Service 的新型应用程序模板.此模板旨在 ...

  5. C++使用代码创建一个Windows桌面应用程序

    WinMain函数 Windows应用程序的唯一程序入口. 函数原型 int WINAPI WinMain { HINSTANCE hInstancem HINSTANCE hPreInstance, ...

  6. Electron 从零创建一个 Windows/OS X/Linux 的桌面可执行程序

    [外链图片转存失败(img-3RucrgcX-1562556984462)(http://7vzsvy.com1.z0.glb.clouddn.com/electron-1-2.png "E ...

  7. 创建一个Windows Service 程序

    1.新建Windows项目,选择"Windows服务"类型的项目. 2.在生成的Service1.cs中代码中写你需要的代码,如下: using System; using Sys ...

  8. 使用Windows Service Wrapper快速创建一个Windows Service

    前言 今天介绍一个小工具的使用.我们都知道Windows Service是一种特殊的应用程序,它的好处是可以一直在后台运行,相对来说,比较适合一些需要一直运行同时不需要过多用户干预的应用程序,这一类我 ...

  9. 创建一个Windows的NTP Server

    搭建一个VMware vRealize Suite的时候遇见了不少时间同步的问题, 实验室里网络与外界隔绝, 不能使用公网的NTP服务器, 所以使用文中的方法自己搭建了一个. 蛮好用的. Creati ...

随机推荐

  1. JavaScript 新语法详解:Class 的私有属性与私有方法

    译者按: 为什么偏要用 # 符号? 原文:JavaScript's new #private class fields 译者:Fundebug 本文采用意译,版权归原作者所有 proposal-cla ...

  2. 激活效能,CODING 敏捷研发模块上线

    昨晚,巴黎圣母院失火,而我们当中的许多人都还没来得及去欣赏它的真容.我们曾以为美好的事物会等待我们,伟大的目标也会等待我们.世事无常,唯一不变的就是变化.在软件研发领域,敏捷研发就是这么一个小步快跑来 ...

  3. UiPath针对SAP的输入技巧

    我观察到在SAP中不论是SimulateType,还是SendWindowMessages,Type Into的输入速度都很慢(是逐个字符输入的).如果只是一次两次的输入倒也没什么,但如果是需要批量多 ...

  4. Windows 安装 Scoop

    Scoop介绍 scoop是Windows下的包管理工具 安装环境要求 1,操作环境:win10 2,确保你的 PowerShell 版本 >= 3. win7或许低于3,得升级.如何确认Pow ...

  5. Nginx反向代理解决iframe跨域问题

    前言 这几天有个需求:做个表单页面,要求后台人员能自定义发布表单,用户来填写表单.我一想,这不麦克表单有现成的吗,拿来就用!发布表单后,可以选择使用iframe方式嵌入网站,一切顺利. 当时的网站是h ...

  6. 你真的了解webview么?

    你真的了解webview么? 写在前面: Webview是我们前端开发从PC端演进到移动端的一个重要载体,现在大家每天使用的App,webview都发挥着它的重要性.接下来让我们从webview看世界 ...

  7. VS Code实用技能1 - 代码折叠、面包屑

    VS Code实用技能 VS Code实用技能1 - 代码折叠.面包屑 一.代码折叠 ubuntu ctrl + shift + { ctrl + shift + } ctrl + k , ctrl ...

  8. Python + PyQt5 实现美剧爬虫可视工具(二)

    美剧<权力的游戏>终于开播最后一季了,在上周写了个简单的可视化美剧的爬虫软件来爬取美剧,链接:https://www.cnblogs.com/weijiutao/p/10614694.ht ...

  9. Spring Cloud微服务系列文,Hystrix与Eureka的整合

    和Ribbon等组件一样,在项目中,Hystrix一般不会单独出现,而是会和Eureka等组件配套出现.在Hystrix和Eureka整合后的框架里,一般会用到Hystrix的断路器以及合并请求等特性 ...

  10. ASP.NET Core中使用GraphQL - 第五章 字段, 参数, 变量

    ASP.NET Core中使用GraphQL ASP.NET Core中使用GraphQL - 第一章 Hello World ASP.NET Core中使用GraphQL - 第二章 中间件 ASP ...