项目名称为:TestService
代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.ServiceProcess;
using System.Text;
using System.Threading;
using System.Windows.Forms;
namespace TestService
{
partial class CareEye : ServiceBase
{
private Thread MainThread;
public CareEye()
{
InitializeComponent();
// TODO: 在 InitComponent 调用后添加任何初始化
MainThread = new Thread(new ThreadStart(ThreadFunc));
MainThread.Priority = ThreadPriority.Lowest;
}
protected override void OnStart(string[] args)
{
// TODO: 在此处添加代码以启动服务。
MainThread.Start();
}
protected override void OnStop()
{
// TODO: 在此处添加代码以执行停止服务所需的关闭操作。
MainThread.Abort();
}
public static void ThreadFunc()
{
int LastHour = DateTime.Now.Hour;
while (true)
{
System.Threading.Thread.Sleep(60000);
if (DateTime.Now.Hour - 1 == LastHour)
{
MessageBox.Show("为了爱护您的眼睛,请您暂时休息5分钟并向远处眺望!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly);
LastHour = DateTime.Now.Hour;
}
}
}
}
}
添加服务安装程序 using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.ServiceProcess;
using System.Text;
using System.Threading;
using System.Windows.Forms;
namespace TestService
{
partial class CareEye : ServiceBase
{
private Thread MainThread;
public CareEye()
{
InitializeComponent();
// TODO: 在 InitComponent 调用后添加任何初始化
MainThread = new Thread(new ThreadStart(ThreadFunc));
MainThread.Priority = ThreadPriority.Lowest;
}
protected override void OnStart(string[] args)
{
// TODO: 在此处添加代码以启动服务。
MainThread.Start();
}
protected override void OnStop()
{
// TODO: 在此处添加代码以执行停止服务所需的关闭操作。
MainThread.Abort();
}
public static void ThreadFunc()
{
int LastHour = DateTime.Now.Hour;
while (true)
{
System.Threading.Thread.Sleep(60000);
if (DateTime.Now.Hour - 1 == LastHour)
{
MessageBox.Show("为了爱护您的眼睛,请您暂时休息5分钟并向远处眺望!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly);
LastHour = DateTime.Now.Hour;
}
}
}
}
}
创建一个Windows服务,仅用InstallUtil程序去安装这个服务是不够的。你必须还要把一个服务安装程序添加到你的Windows服务当中,这样便于InstallUtil或是任何别的安装程序知道应用你服务的是怎样的配置设置。
1. 将这个服务程序切换到设计视图
2. 右击设计视图选择“添加安装程序”
3. 切换到刚被添加的ProjectInstaller的设计视图
4. 设置serviceInstaller1组件的属性:
1) ServiceName = My Sample Service
2) StartType = Automatic
5. 设置serviceProcessInstaller1组件的属性
1) Account = LocalSystem
6. 生成解决方案
在完成上面的几个步骤之后,会自动由Visual Studio产生下面的源代码,它包含于ProjectInstaller.cs这个源文件内。
安装windows 服务:
这时就是要把个服务安装一下。进入cmd中的
cd C:
后在打
InstallUtil f:w2.exe 这个就安装了服务 卸载服务是 InstallUtil f:w2.exe -u
现在就剩启动服务了,
到windows服务里启动你安装的服务就可以了。