对处事的认识有很多个阶段。
第一阶段:其时还在用c++,知道在一个进程里while(True){},然后里面做很多很多工作,这就叫做处事了,界面可能其时还用Console控制台措施。
第二阶段:知道了处事要在后台执行,一般不会有界面显示,并且开机自启动,于是隐藏Console控制台界面,并且通过使用SC CREATE 将exe变为处事,并且到达开机自启动的目的。这时候还是c++ 阶段。
第三阶段:因项目需求接触c#,发明有个叫项目模板专门制作windows 处事,测验考试了下,觉得还不错,省事了许多。通过命令行安置处事。
第四阶段:发明了一个好对象可以制作安置包,省去了敲命令行的痛苦,对实施人员来说必定是个福音
一,编写windwos 处事
c# 编写windows 处事还算是相当简单的,至少比c++ 要简单。
1,新建项目windows 处事。填写处事名称TestService
创建告成,项目界面是这样的
2,编写处事代码,右键TestService,检察代码 OnStart,编写启动代码 。OnStop编写遏制代码
namespace TestService { public partial class TestService : ServiceBase { FileStream fs = null; StreamWriter sw = null; Thread td = null; public TestService() { InitializeComponent(); } protected override void OnStart(string[] args) { td = new Thread(WorkThread); td.Start(); } protected void WorkThread() { fs = new FileStream(@"f://ggg.txt", FileMode.OpenOrCreate, FileAccess.Write); sw = new StreamWriter(fs); while (true) { sw.WriteLine(DateTime.Now.ToString()); sw.Flush(); Thread.Sleep(2000); } } protected override void OnStop() { if(td != null) { td.Abort(); } sw.Close(); fs.Close(); } } }
3,双击TestService.cs,在右边空白处右键添加安置措施 ,会呈现这样两个对象,,点击serviceInstall1 改削处事的名字,以及启动类型。点击serviceProcessinstall1,转变Account 为LocalSystem.
4,OK 大功乐成,一个简单的处事已经完成了。接下来,我们测试该处事是否能够正常跑。右键打点员打开命令提示框,数据 installutil TestService(处事名称) 进行安置处事,顺利的话,会有下面的提示完成的字符。这时会看到F盘忽悠ggg.txt 在写文件。
二、制作安置包,
开始制作安置包,我们不能每次把这个处事拿出去都用命令行去安置,不太友好。右键解决方案,在其他类型点击安置部署,如果发明没有安置,就先去安置这个工具,很简单,VSI_bundle.exe 只有5M巨细。
在应用措施文件夹上右键添加项目输出。
右键工程-》视图-》添加自界说操纵-》右键添加自界说操纵
这个时候,从头编译Setup 工程就会生成setup.exe,该exe 就是我们的处事安置包。到此,整个处事编写打包就已经完成。
good luck