1、首先创建一个Windows Service

2、创建完成后切换到代码视图,代码中默认有OnStart和OnStop方法执行服务开启和服务停止执行的操作,下面代码是详细解释:

using System;

using System.IO;

usingSystem.ServiceProcess;

using System.Text;

usingSystem.Timers;

namespaceTestService

{

public partial class Service1 : ServiceBase

{

public Service1()

{

InitializeComponent();

}

protected override voidOnStart(string[] args)

{

//服务开启执行代码

StartDoSomething();

}

protected override void OnStop()

{

//服务结束执行代码

}

protected override void OnPause()

{

//服务暂停执行代码

base.OnPause();

}

protected override void OnContinue()

{

//服务恢复执行代码

base.OnContinue();

}

protected override void OnShutdown()

{

//系统即将关闭执行代码

base.OnShutdown();

}

private void StartDoSomething()

{

System.Timers.Timer timer = newSystem.Timers.Timer(10000); //间隔10秒

timer.AutoReset = true;

timer.Enabled = false;  //执行一次

timer.Elapsed += newElapsedEventHandler(WriteSomething);

timer.Start();

}

private void WriteSomething(objectsource, System.Timers.ElapsedEventArgs e)

{

FileStream fs = null;

try

{

fs = newFileStream("d:/1.txt", FileMode.OpenOrCreate);

string strText = @"//实例化一个文件流--->与写入文件相关联

FileStream fs = newFileStream(sf.FileName, FileMode.Create);

//实例化一个StreamWriter-->与fs相关联

StreamWriter sw = newStreamWriter(fs);

//开始写入

sw.Write(this.textBox1.Text);

//清空缓冲区

sw.Flush();

//关闭流

sw.Close();

fs.Close();";

//获得字节数组

byte[] data = newUTF8Encoding().GetBytes(strText);

//开始写入

fs.Write(data, 0, data.Length);

//清空缓冲区、关闭流

fs.Flush();

fs.Close();

fs.Dispose();

}

catch

{

}

finally

{

if (fs != null)

{

fs.Close();

fs.Dispose();

}

}

}

}

}

3、然后切换到设计视图,右键点击下图中圈选的“添加安装程序”

4、选中下图第一个控件,点击F4,右边切换到属性视图;更改属性视图中的Account属性为LocalService(本地服务)

5、

选中上面第二个控件,点击F4,右边切换到属性视图。更改ServiceName为你自己喜欢的服务名称,记住不要和系统的冲突了哦~,亲!StartType默认为手动,你可以更改为自动

(Automatic)或禁用(Disabled)

6、编译项目,然后win+R输入cmd进入命令窗口。去对应.net版本下的目录中找到InstallUtil.exe,我项目采用的是 .net 2.0,故路径为C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727

Cmd命令
installutil      WindowsService_test.exe  (安装Windows服务)
installutil /u   WindowsService_test.exe  (卸载Windows服务)

.Net 开发Windows Service的更多相关文章

  1. .NET开发Windows Service程序 - Topshelf

    在实际项目开发过程中,会经常写一些类似定时检查,应用监控的应用.这类应用在windows平台通常都会写成window service程序. 在百度上搜索一下'c#开发windows service', ...

  2. 使用C#编程语言开发Windows Service服务

    转载-https://www.cnblogs.com/yubao/p/8443455.html Create Windows Service project using Visual Studio C ...

  3. C# Windows service 开发笔录

    本文将详细图解,开发Windows service的过程. 功能:数据库查询数据后,经过处理,每天定时发送邮件. 一.WinForm调试 1.新建Windows service项目 2.新建WinFo ...

  4. Python3 写Windows Service服务程序

    用Python开发Windows Service,用Python来做这个事情必须要借助第三方模块pywin32,下载路径:https://pypi.org/project/pywin32/#files ...

  5. Windows Service的转换与部署

    开发Windows Service,可能会碰到以下两种情况. 1. 直接开发一个Windows Service 网上有很多教程,可以参考这个: http://www.cnblogs.com/sorex ...

  6. Windows Service 开发,安装与调试

    Visual Studio.net 2010 Windows Service 开发,安装与调试 本示例完成一个每隔一分钟向C:\log.txt文件写入一条记录为例,讲述一个Windows Servic ...

  7. 如何托管ASP.NET Core应用到Windows Service中

    (此文章同时发表在本人微信公众号"dotNET开发经验谈",欢迎右边二维码来关注.) 题记:正在构思一个中间件的设计,考虑是否既可以使用最新的技术,也可以兼顾传统的部署模式.所以有 ...

  8. 使用Visual Studio 2015 Community 开发windows服务

    昨天研究在.NET下开发Windows服务程序,期间遇到一些小问题,这里仅将自己的开发过程和需要注意的地方写下和广大网友分享……  1.基础   Windows服务是指系统启动时能够自己运行的程序.W ...

  9. 使用Python写Windows Service服务程序

    1.背景 如果你想用Python开发Windows程序,并让其开机启动等,就必须写成windows的服务程序Windows Service,用Python来做这个事情必须要借助第三方模块pywin32 ...

随机推荐

  1. 【MySQL】undo,redo,2PC,恢复思维导图

    http://blog.itpub.net/22664653/viewspace-2131353/

  2. Date类型数据的加一天

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); try { if (startDate != null &am ...

  3. 使用Intent调用内置应用程序

    布局代码如下: <?xml version="1.0" encoding="utf-8" ?> <LinearLayout xmlns:and ...

  4. go+mysql实现页面的增删改查练习

    原文地址:http://www.niu12.com/article/35 初次学go,在了解一些基础之后就开始做一个用户的增删改查来回顾知识,有很多数据验证和安全漏洞并没有考虑,只当作联系 前提:下载 ...

  5. vsftp 服务配置篇

    在CentOS或者RedHat Linux上有自带的ftp软件叫做vsftpd (very serure ftp) 搭建vsftpd 服务 yum 安装需要用两个包:vsftpd 和 db4-util ...

  6. linux 远程同步数据工具rsync (2)

    在远程主机上建立一个rsync的服务器,在服务器上配置好rsync的各种应用,然后本机作为rsync的一个客 户端去连接远程的rsync服务器.如何去配置一台rsync服务器. 首先配置/etc/rs ...

  7. python+ubuntu+selenium安装chrome和chromedriver

    请确保selenium已经安装成功,没安装的可以pip install selenium 安装chrome 在终端输入 下载安装包 wget https://dl.google.com/linux/d ...

  8. DTD 和 Schema简介

    什么是DTD? DTD(文档类型定义)的作用是定义 XML 文档的合法构建模块. 它使用一系列的合法元素来定义文档结构. DTD例子 <?xml version="1.0"? ...

  9. Mybaits的特点及优点

    1.SQL语句和代码分离 便于统一管理和维护,不必再Java代码中调式SQL语句.但是当SQL语句出错时,控制台不会打印Log, 解决办法--引用log4j 2.用标签拼接SQL语句 用标签代替JAV ...

  10. 《大话操作系统——做坚实的project实践派》(3)

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbG1ub3M=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/d ...