现在,我有了一个C#应用程序,它使用计时器运行24/7,它会在30秒内全部运行,并执行任何操作。
我想把这个应用程序变成一个windows服务,以便在后台运行。但是服务崩溃马上..。
我的代码:
public static System.Timers.Timer _timer = new System.Timers.Timer();
static void Main(string[] args)
{
_timer.Interval = 30000;
_timer.Elapsed += timerCallback;
_timer.AutoReset = true;
_timer.Start();
}
public static void timerCallback(Object sender, System.Timers.ElapsedEventArgs e)
{
// Do anything..
}而错误是:
Windows无法在本地计算机上启动应用程序服务。 错误1053:服务没有及时响应启动或控制请求。
在windows事件查看器中,发生此消息:
在等待应用程序服务连接时,达到了超时(30000毫秒)。
但是错误出现的速度比30秒还快?!
有什么解决方案来运行这个服务??谢谢
迈克尔
发布于 2015-05-11 10:13:27
您可以使用计时在windows服务中定期执行逻辑,
protected override void OnStart(string[] args)
{
base.OnStart(args);
Timer timer = new Timer();
timer.Interval = 30*1000;
timer.Elapsed += new ElapsedEventHandler(timer_Elapsed);
timer.Enabled = true;
timer.Start();
}private void timer_Elapsed(object sender, ElapsedEventArgs e)
{
//put logic here that needs to be executed for every 30sec
}https://stackoverflow.com/questions/30164748
复制相似问题