WindowsService - 创建Windows服务
1. 利用 Visual Studio 新建一个 WindowsService 项目
2. 保持 Program.cs 入口代码不变, 新建或者修改原有Service1文件。
3. 设置 Service1 的构造函数
public Service1() { InitializeComponent(); // 可以在系统事件里查看 //EventLog(""); System.Timers.Timer timer = new System.Timers.Timer(); // 设置到达时间的时候执行的事件 timer.Elapsed += new System.Timers.ElapsedEventHandler(TimedEvent); // 是执行一次(false)还是一直执行(true) timer.AutoReset = true; // 时间间隔执行一次方法 timer.Interval = 5000; // 是否执行 System.Timer.Timer.Elapsed事件 timer.Enabled = true; }
4. 创建定时器中的触发事件函数
private void TimedEvent(object sender, ElapsedEventArgs e) { FileStream fs = new FileStream(@"C:\Users\LakNeumann\Documents\MyProject\abc.txt", FileMode.Append); StreamWriter sw = new StreamWriter(fs); try { sw.Write(DateTime.Now.ToLongTimeString()); sw.Flush(); } finally { sw.Close(); fs.Close(); } }
5. 可以编写 OnStart 和 OnStop 的函数
protected override void OnStart(string[] args) { WriteLog("启动成功"); } protected override void OnStop() { WriteLog("停止成功"); }
6. 点击 Service1.cs 切换到设计视图, 右击空白区域。 点击添加安装程序 (如果不添加安装程序,则无法正常将服务安装在 Windows 系统中
7. 设置 安装程序参数
8. 编译 并生成 .exe 文件
9. 利用管理员权限的控制台 完成对 服务的安装
.NET - Window 服务安装 InstallUtil.exe path sc create ServerName binPath= "path" (sc 工具比较强大, 推荐使用) .NET - Window 服务删除 sc delete ServicesName .NET - Window 服务打开 net start callcenter .NET - Window 服务关闭 net stop CallCenter