1 大概思路
設計服務程序
創建服務
安裝必備組件
編寫Service1
運行效果
2 設計服務程序
創建服務程序,通過添加System.Timers時鐘進行定時向Wecome.txt寫入文本。
3 創建服務
創建項目、安裝項目
(通過工具箱添加System.Timers組件,系統時鐘組件,不同於System.Windows.Forms)

4 安裝必備組件

5 編寫Service1
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using System.IO;
namespace WindowsServiceDemo
{
public partial class Service1 : ServiceBase
{
public Service1()
{
InitializeComponent();
}
/// <summary>
/// 標識開始
/// </summary>
private string flag = string.Empty;
/// <summary>
/// 允許時鐘開始
/// </summary>
private bool isBegin = true;
protected override void OnStart(string[] args)
{
flag = "開始時間:";
this.timer1.Enabled = true;
}
protected override void OnStop()
{
}
/// <summary>
/// 9000毫秒調度一次,即9秒高度一次
/// create by zhyongfeng in 2014-03-26
/// </summary>
/// <param name="sender">object</param>
/// <param name="e"> System.Timers.ElapsedEventArgs</param>
private void timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
//開始
if (!isBegin)
return;
isBegin = false;
try
{
FileStream nFile = new FileStream(System.AppDomain.CurrentDomain.BaseDirectory + "Wecome.txt", FileMode.Append, FileAccess.Write);
StreamWriter writer = new StreamWriter(nFile);
writer.WriteLine(flag + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
writer.WriteLine("Welcome to Write:" + DateTime.Now.ToFileTimeUtc().ToString());
writer.WriteLine();
writer.Close();
LogUtility.Logging(Process.GetCurrentProcess().MainModule.ModuleName, Process.GetCurrentProcess().MachineName, Process.GetCurrentProcess().MainModule.ModuleName, LogUtility.EVENT.EVENT_WARNING, "新增了");
}
catch
{
}
isBegin = true;
}
}
}
查看本欄目
6 運行效果
開始->運行->services.msc,可見如下圖

開始->運行->eventvwr.msc,可見如下圖

7 總結
Windows服務可通過修改以下屬性,通過System.Timers組件達到自動控制的功能,針對一些運行周期長的數據可通過Windows服務處理(如通過捕捉大量數據收發郵件等)。
serviceInstaller1屬性值說明
Manual:服務安裝後,必須手動啟動。
Automatic :每次計算機重新啟動時,服務都會自動啟動。
Disabled: 服務無法啟動。
源代碼下載:
http://files.cnblogs.com/yongfeng/WindowsServiceDemo.rar
PDF下載:
Windows服務程序時鐘調用.pdf
Windows服務創建文檔.pdf