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

 废话不多说。这几天在研究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. Java(Android)编程思想笔记01:多态性的理解

    1. 多态的定义: 指允许不同类的对象对同一消息做出响应.即同一消息可以根据发送对象的不同而采用多种不同的行为方式. (发送消息就是函数调用)   2. 多态的理解    多态是面向对象的重要特性,简 ...

  2. [改善Java代码]让工具类不可实例化

    建议42: 让工具类不可实例化 Java项目中使用的工具类非常多,比如JDK自己的工具类java.lang.Math.java.util.Collections等都是我们经常用到的.工具类的方法和属性 ...

  3. 转:android git开源项目列表

    1. 知乎的合集说明 https://www.zhihu.com/question/19804692 2. http://p.codekk.com/

  4. Angular 全局页面切换动画 me-pageloading

    最近看了Codrops的一篇文章, 里面讲到了一个页面切换的效果, 详情点击此处. 看了这个效果感觉很赞, 觉得这个效果可以用在angular的页面切换中, 所以将这个效果移植到angular中, 做 ...

  5. spring+mybatis管理多个数据源(非分布式事务)

    本文通过一个demo,介绍如何使用spring+mybatis管理多个数据源,注意,本文的事务管理并非之前博文介绍的分布式事务. 这个demo将使用两个事务管理器分别管理两个数据源.对于每一个独立的事 ...

  6. hiho 1182 : 欧拉路·三

    1182 : 欧拉路·三 这时题目中给的提示: 小Ho:是这样的,每次转动一个区域不是相当于原来数字去掉最左边一位,并在最后加上1或者0么. 于是我考虑对于"XYYY",它转动之后 ...

  7. javaweb 乱码总结

    可能的错误地方: 1.jsp页面编码 2.表单编码 3.servlet可接受编码 4.tomcat中server.xml文件中的指定编码 所有的编码要统一,一般使用“UTF-8”比较好 我最近一次出错 ...

  8. 推荐一款App运营工具:AYL爱盈利App榜单监控

    对包括开发者.产品运营.投资人在内的诸多移动互联网从业人员而言,国内Android应用市场和IOS应用市场的榜单变化数据时大家的必修功课之一:看看这段时间所关注的垂直领域里最火的是哪几款应用:看看竞争 ...

  9. 配置对IIS上tabular的 HTTP 访问

    上周网管说某部门一同事用的自家电脑办公,操作系统是正版win8家庭版,不能加入公司域,求解如何访问数据仓库. 以前一直以为只有域内用户才能使用数据仓库,没办法有问题总要给人解决,一味地推脱不但会影响其 ...

  10. Agile.Net 组件式开发平台 - 权限管理组件

    RBAC原则       (1)最小权限原则之所以被RBAC所支持,是因为RBAC可以将其角色配置成其完成任务所需要的最小的权限集.       (2)责任分离原则可以通过调用相互独立互斥的角色来共同 ...