Windows服务中Timer组件Tick无法触发 具体原因,微软自称是Framework的bug:
但是无论是windows窗体中timer还是组件中的timer都是继承自System.Windows.Form.Timer,并不是我们需要的System.Timers ,继承自System.Timers 的timer只有手动创建
public Service1()
{
InitializeComponent();
System.Timers.Timer t = new System.Timers.Timer(200);//实例化Timer类,设置间隔时间为10000毫秒;
t.Elapsed += new System.Timers.ElapsedEventHandler(theout);//到达时间的时候执行事件;
t.AutoReset = true;//设置是执行一次(false)还是一直执行(true);
t.Enabled = true;//是否执行System.Timers.Timer.Elapsed事件;
}
public void theout(object source, System.Timers.ElapsedEventArgs e)
{
SqlConnection conn = new SqlConnection("Server=.;UID=eaglesoft;PWD=password;DataBase=exchange");
SqlCommand comm = new SqlCommand("INSERT INTO op_album(album_name,album_score,album_picscr) VALUES('1','2','3')", conn);
conn.Open();
comm.ExecuteNonQuery();
conn.Close();
}
这样就可以触发Elapsed事件了,注册服务一切正常,能触发该事件
分享到:
相关推荐
在本文中,我们将深入探讨如何使用C#编程语言创建Windows服务,并结合System.Timers.Timer类实现定时任务。这个实例不仅提供了源代码,还通过截图帮助理解每个步骤,这对于初学者和开发者来说是一份宝贵的资源。 ...
在C#中创建Windows服务并结合使用Timer定时器是一个常见的任务,这主要应用于需要在后台自动执行周期性工作的系统。以下是对这个主题的详细说明: 首先,创建一个空白的项目,选择.NET Framework作为目标框架,因为...
在Windows应用程序、服务或控制台程序中,C#定时器常常被用来创建后台任务、监控、更新用户界面或其他需要定时触发的功能。 1. **Timer类的介绍** C#中的Timer类主要存在于System.Threading命名空间下,有两种常见...
一、Windows定时器类型 Windows操作系统提供了两种主要类型的定时器:SetTimer和 Multimedia Timer。SetTimer是GUI应用程序中常用的一种简单定时器,适合处理相对较大的时间间隔,例如几百毫秒或几秒钟。而多媒体...
本文将详细介绍如何在 C# 中使用 `System.Timers.Timer` 定时器,并通过一个简单的示例来演示其基本用法。 #### 二、`System.Timers.Timer` 概述 `System.Timers.Timer` 类位于 `System.Timers` 命名空间中,该命名...
C++定时器Timer在项目中的使用方法是指在项目中使用C++语言实现定时器的使用方法。定时器是计算机编程中的一种机制,用于在特定的时间间隔内执行特定的任务。本文将详细介绍C++定时器Timer在项目中的使用方法,包括...
在Windows系统中,定时器通常有两种主要类型:基于消息的定时器(Message Timer)和硬件定时器。基于消息的定时器通过向应用程序发送特定的消息(通常是WM_TIMER消息)来触发回调函数,而硬件定时器则更依赖于系统的...
Java中定时器(Timer)主要用于执行周期性的任务。通过`java.util.Timer`类,可以创建一个定时器对象,该对象负责调度事件。定时器可以用来执行两种类型的定时任务:一次性任务和周期性任务。 #### 一次性任务 一次...
标题中的“高精度定时器Timer”指的是能够提供毫秒级甚至微秒级精度的定时服务,相较于系统默认的定时器,这种高精度定时器具有更高的稳定性和准确性。 在描述中提到,“精度可以准确到1ms,误差不超2ms”,这意味...
windows自带的定时器精度一般在10ms量级,精确度不足,在部分需要高...关键的是,该定时器通过类封装后,使用方法与windows定时器类似。 本代码是原代码,属原创代码,是按照现实需求而开发的,具有很高的实用价值。
【标题】"继承自BCB的定时器Timer"涉及到的核心知识点是C++ Builder(简称BCB)中的TTimer组件和自定义定时器的实现。TTimer是BCB中用于实现定时触发事件的一个控件,它在VCL(Visual Component Library)库中提供,...
在IT行业中,开发人员经常需要使用到定时器(Timer)组件来实现特定的延时或周期性任务。在Delphi编程环境中,系统自带的TTimer组件虽然方便,但在某些复杂场景下,例如需要在定时器触发事件时执行耗时操作,可能会...
在本文中,我们将深入探讨如何在Visual Studio 2019 (VS2019) 中使用MFC(Microsoft Foundation Class)库创建一个基于C++的Timer定时器应用。MFC是微软为Windows应用程序开发提供的一组C++类库,它简化了Windows ...
5. **WinRT Timers**: 在Windows Runtime环境中,可以使用`Windows::Foundation::Timer`类创建定时器,它提供了一个回调接口,当定时器触发时会调用该接口。WinRT定时器基于异步操作,因此可以避免阻塞UI线程。 6. ...
在Windows编程中,定时器(Timer)是一种常见且重要的机制,用于在特定间隔后执行某个操作。传统的VC++定时器通常依赖于窗体消息循环,这意味着它们是基于消息驱动的,即当计时器时间到时,系统会发送一个特定的消息...
总结,实现微秒级精度的Windows定时器涉及对底层API的深入理解和灵活运用,如QueryPerformanceCounter和QueryPerformanceFrequency。同时,可能需要结合多线程、条件变量等同步机制来创建可重复触发的定时器。在编写...
它会维护一个`Vector`(在Java早期版本中使用,现在更推荐使用`ArrayList`或`LinkedList`)来存储`TimerTask`实例,并提供添加、删除以及检查定时器是否到期的方法。`TimerTasks`类还负责启动和停止定时器。 最后,...
- 如果定时器是在线程中使用的,确保线程的message pump(消息循环)正常运行,以便处理WM_TIMER消息。 - 当窗口或应用程序关闭时,应正确清理定时器,避免资源泄漏。 - 多个定时器可以同时存在,每个定时器都有自己...
`Timer`控件是.NET框架中的一个控件,位于System.Windows.Forms命名空间下。在Windows Forms应用程序中,我们可以利用它来实现定时触发事件的功能,例如每隔一秒更新窗体上的时间显示。下面我们将详细讲解如何设置和...
综上所述,这个"多个定时器的例子 Timer VC++"示例将涵盖如何在VC++ MFC程序中创建、管理和使用多个定时器,以实现不同任务的定时执行。通过学习这个例子,开发者可以更好地理解和应用定时器技术,从而提升Windows...