什么是Windows服务?
Windows服务,是在Windows操作系统下能够长时间运行的可执行应用程序。
它们在计算机启动后用户登录前就执行,启动方式分自动和手动,可以重启或者暂停,且没有任何用户界面。
Windows服务典型的应用是缓存、异步支付订单...
C#如何创建Windows服务?
利用Windows服务模板
新建项目
单击右键,选择添加安装程序
添加成功后效果如下
分别配置serviceInstaller1、serviceProcessInstaller1的属性
编写服务主体逻辑代码,比如在文本文件中写入一句话
1 using System; 2 using System.IO; 3 using System.ServiceProcess; 4 using System.Configuration; 5 6 namespace MyWindowsService 7 { 8 public partial class Service1 : ServiceBase 9 { 10 public Service1() 11 { 12 InitializeComponent(); 13 } 14 15 /// <summary> 16 /// 启动服务时执行 17 /// </summary> 18 /// <param name="args"></param> 19 protected override void OnStart(string[] args) 20 { 21 FileStream fs = new FileStream(ConfigurationManager.AppSettings["LogFile"].ToString(), FileMode.OpenOrCreate, FileAccess.Write); 22 StreamWriter sw = new StreamWriter(fs); 23 sw.BaseStream.Seek(0, SeekOrigin.End); 24 sw.WriteLine(string.Format("Windows Service Start At {0} \n", DateTime.Now.ToString())); 25 sw.Flush(); 26 sw.Close(); 27 fs.Close(); 28 } 29 30 /// <summary> 31 /// 停止服务时执行 32 /// </summary> 33 protected override void OnStop() 34 { 35 FileStream fs = new FileStream(ConfigurationManager.AppSettings["LogFile"].ToString(), FileMode.OpenOrCreate, FileAccess.Write); 36 StreamWriter sw = new StreamWriter(fs); 37 sw.BaseStream.Seek(0, SeekOrigin.End); 38 sw.WriteLine(string.Format("Windows Service Stop At {0} \n", DateTime.Now.ToString())); 39 sw.Flush(); 40 sw.Close(); 41 fs.Close(); 42 } 43 } 44 }