其实我也是第一次在博客园写博客,看到那些高手说自己要多动手写博客,于是乎自己也尝试尝试。  

 废话不多说。这几天在研究window service,通过查找各种大神写的博客,我终于成功的自己写出来了。

下面是创建window service的基本思路:

  1、打开vs,创建window服务项目。

    

项目新建完成。

  2、双击打开Service1,然后右击“添加安装程序”,程序会添加一个 “ProjectInstaller.cs”,双击打开设计页面,会看到一个     叫“serviceInstaller”和“serviceProcessInstaller1”。

首先选择第一个serviceInstaller右击或者F4选择属性,填入DispalyName属性,这是服务安装到计算机上显示的名称,Description是备注,StartType是服务安      装之后的启动方式,Manual是手动,Automatic是自动,Disabled是禁用,这里选手动。

      第二选择serviceProcessInstaller1右击选择属性,选择Account   选择 “LocalSystem”

  3、打开Service1的后台代码会有两个方法OnStart和OnStop分别是服务开启和关闭的方法。

  

public static void WriteLog(string str)
{
if (!File.Exists(@"f:\service.txt"))
{
File.Create(@"f:\service.txt");
}
using (StreamWriter sw = File.AppendText(@"f:\service.txt"))
{
sw.WriteLine(str);
sw.Flush();
}
} protected override void OnStart(string[] args)
{
string state = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + "启动";
WriteLog(state);
} protected override void OnStop()
{
string state = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + "停止";
WriteLog(state);
}

这段代码会在服务开启和停止的时候记录在txt文件里面,写完之后重新生成项目。

4、接下来就是安装服务。在桌面新建一个文本文档。

“%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe C:\Users\Topsmoon\Desktop\Test\WindowsServiceTest\WindowsServiceTest\bin\Debug\WindowsServiceTest.exe  这是你生成的exe文件的地址

pause

保存之后,重命名为启动服务.bat;

还有就是新建卸载服务.bat

"%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe /u C:\Users\Topsmoon\Desktop\Test\WindowsServiceTest\WindowsServiceTest\bin\Debug\WindowsServiceTest.exe

pause

"

两个新建完成之后,使用管理员的身份运行启动服务的文件,然后服务就会部署到你的机器上面,右键我的电脑->管理->看服务里面吧。

好了,这是我第一次这博客,写得我自己都看不下去,高手勿喷。谢谢

C# window service的创建的更多相关文章

  1. Window Service 计划任务

    在ASP.NET中创建计划任务,就我个人而言,用过两种方式,一种是用SQL Server创建,把写好的SSIS包导入SQL Server创建的任务中,设置好时间让它去执行.还有一种就是利用window ...

  2. 【Window Service】关于Window Service的两三事

    引言  Window Service通常用于寄宿WCF服务或者定时作业.下面记录一下它的用法. 创建 创建Window Service项目后,可以看到Program和Service1类.Program ...

  3. 创建 window service 定时任务

    参考文章:http://www.cnblogs.com/jack-liang/archive/2011/05/20/2051743.html 前段时间做过一个项目,前端系统提供添加定时任务,后端系统要 ...

  4. window service 创建

    1:vs中创建一个 window servece 2.右键 添加安装程序 3.更改属性视图中的Account属性为LocalService(本地服务) 更改ServiceName为你自己的服务名称   ...

  5. C# window Service实现调用有UI的应用程序(关于win xp以后的window系统)

    我开发的系统中有一接口程序(这里就称Task,是一个C#的Console Application)经常无故的死掉,导致第二天的数据不能正常解析,所以,我写了一个window service去监视Tas ...

  6. RabbitMQ.NET In Window Service

    工作中要求使用RabbitMQ,以Windows Service 模式启动,中间有遇到一些问题,网上大部分博客有误导倾向, 在这里做一个简单的记录,以免后面的人走坑: 1. 自动重新连接,不需要手动处 ...

  7. Web Service 的创建简单编码、发布和部署

    最近,老大准备将已有的C/S架构项目中的通信部分做成通用,需要将其支持WebService为以后项目向着B/S架构升级做好铺垫,为此身为屌丝的我去各种百度WebService是个什么卵玩意,然后逐渐搭 ...

  8. 在Salesforce中向外公布Service去创建Lead,并且用Asp.Net去调用此Service

    1):在Salesforce中如何配置,向外公布此Service,请看如下链接: http://www.shellblack.com/marketing/web-to-lead/ 2):如何在Asp. ...

  9. SQL Server Service Broker创建单个数据库会话

    概述 SQL Server Service Broker 用来创建用于交换消息的会话.消息在目标和发起方这两个端点之间进行交换.消息用于传输数据和触发消息收到时的处理过程.目标和发起方既可以在同一数据 ...

随机推荐

  1. 解决TableView / ScrollView上的Menu问题(1滑出View区域还可点击2导致点击menu后View不能滑动)

    解决TableView / ScrollView上的Menu问题 1划出区域还可点击 重写CCMenu的触摸事件函数 TouchBegin/TouchMove/TouchCancle/TouchEnd ...

  2. SQL Server 在线进程分析处理

    SQL Server 在线进程分析处理 前言 数据库在线进程处理在很多时候需要人为干预已达到预期管理目标,下面整理一下常用的在线进程管理方法,便于后续工作使用. 一.查看目标数据库在线进程,并杀死指定 ...

  3. [改善Java代码]集合中的元素必须做到compareTo和equals同步

    实现了Comparable接口的元素就可以排序,

  4. 关于Windows下mysql忘记root密码的解决方法

    原文链接: http://www.cnblogs.com/andy_tigger/archive/2012/04/12/2443652.html 1. 首先检查mysql服务是否启动,若已启动则先将其 ...

  5. hdu 2844 多重背包+单调队列优化

    思路:把价值看做体积,而价值的大小还是其本身,那么只需判断1-m中的每个状态最大是否为自己,是就+1: #include<iostream> #include<algorithm&g ...

  6. input 데이터의 자판입력모드의 한글/영문 자동전환, 영문고정 하는 방법 웹프로그래밍 팁

      input 태그의 style 속성의 ime-mode 변경으로 한글/영문의 자동전환이나 영문만 입력이 되도록 할 수 있다.     style="ime-mode:activ ...

  7. 【Knockout】四、绑定上下文

    Binding context binding context是一个保存数据的对象,你可以在你的绑定中引用它.当应用绑定的时候,knockout自动创建和管理binding context的继承关系. ...

  8. C#算法基础之插入排序

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  9. Win7显示隐藏文件,隐藏文件夹怎么显示?如何查看?

    隐藏文件技术是木马病毒传播最惯用的手法之一,它们利用大部分网友对基础操作的不熟悉特点,逃过用户的发现和检查,显示隐藏文件的标准设置方法大家都会使用,一旦隐藏问题与病毒木马结合起来,比如典型的autor ...

  10. 第三十三篇、富文本 NSMutableAttributedString

    // 设置颜色等 NSMutableDictionary *arrDic = [NSMutableDictionary dictionary]; arrDic[NSForegroundColorAtt ...