timer定时器,每月固定时间群发短信,用button控制启动停止,winform界面怎么写啊

laoyang12345 2016-09-28 11:12:22
private void timer1_Tick(object sender, EventArgs e)
{
string dayOfWeek = DateTime.Now.DayOfWeek.ToString();
string timeOfDay = DateTime.Now.ToString();
this.label6.Text = "当 前 时 间:" + " " + timeOfDay + " " + dayOfWeek;
System.Timers.Timer timer = new System.Timers.Timer();
timer.Enabled = true;
timer.AutoReset = false;
timer.Interval = 5000;//执行间隔时间,单位为毫秒
timer.Start();
timer.Elapsed += new System.Timers.ElapsedEventHandler(timer1_Elapsed);

//timer.Enabled = false;
//timer.Stop();
}
private static object anyscObj = new object();
private void timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{

// 得到intHour,intMinute,intSecond,是当前系统时间
int intYear = e.SignalTime.Year;
int intMonth = e.SignalTime.Month;
int intDay = e.SignalTime.Day;
int intHour = e.SignalTime.Hour;
int intMinute = e.SignalTime.Minute;
int intSecond = e.SignalTime.Second;

DateTime date = DateTime.Parse(dateTimePicker.Text);
int year = date.Year;
int month = date.Month;
int day = date.Day;
int hour = date.Hour;
int minute = date.Minute;
int second = date.Second;
if (intYear == year && intMonth == month && intDay == day && intHour == hour && intMinute == minute && intSecond == second)
{
lock (anyscObj)
{
System.Windows.Forms.MessageBox.Show("时间到了!");
SendMessage();
}
}
}
需求变了,这个地方要显示界面,每个月的某一天定时发送,用botton控制启动和停止,各位大神,这界面怎么设计,实在是费解。。。。。
...全文
267 11 打赏 收藏 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
laoyang12345 2016-09-28
  • 打赏
  • 举报
回复
[quote=引用 1 楼 yang1216 的回复:] 还不如计划任务呢。[/quote 需求就是这样,我在想这样能不能实现;
laoyang12345 2016-09-28
  • 打赏
  • 举报
回复
引用 3 楼 yang1216 的回复:
那就每隔一段时间判断一下当前系统时间是不是需要发短信的时间呗。
winform界面怎么写啊,让用户怎么设置,每月的几号去执行发短信的方法
yang1216 2016-09-28
  • 打赏
  • 举报
回复
那就每隔一段时间判断一下当前系统时间是不是需要发短信的时间呗。
laoyang12345 2016-09-28
  • 打赏
  • 举报
回复
可是需求就是这样啊,我本来已经做完了,可是又改了需求,我在想这个界面是怎么做的,还要显示出来,用button控制
yang1216 2016-09-28
  • 打赏
  • 举报
回复
还不如计划任务呢。
laoyang12345 2016-09-28
  • 打赏
  • 举报
回复
引用 10 楼 wenyiyi 的回复:
楼主,用windows 服务吧。那个发布好以后就不用管了
需求就是这样,小公司,我还是结贴吧
wenyiyi 2016-09-28
  • 打赏
  • 举报
回复
楼主,用windows 服务吧。那个发布好以后就不用管了
laoyang12345 2016-09-28
  • 打赏
  • 举报
回复
引用 8 楼 lovelj2012 的回复:
1、你设计一个界面,让用户选择年月日这种东西,保存到一个xml文件 2、把发动短信的逻辑单独拿出来写一个exe,用定时器去轮询,发送时间从xml读取 3、选择年月日的这个窗体,用timer去监控发送短信的exe(保证这个程序时刻运行),每次修改年月日之后,重启发送短信的exe,点停止发送就把发送短信的exe进程结掉
好麻烦啊,没有更简单的吗??
江南小鱼 2016-09-28
  • 打赏
  • 举报
回复
1、你设计一个界面,让用户选择年月日这种东西,保存到一个xml文件 2、把发动短信的逻辑单独拿出来写一个exe,用定时器去轮询,发送时间从xml读取 3、选择年月日的这个窗体,用timer去监控发送短信的exe(保证这个程序时刻运行),每次修改年月日之后,重启发送短信的exe,点停止发送就把发送短信的exe进程结掉
laoyang12345 2016-09-28
  • 打赏
  • 举报
回复
引用 6 楼 lichjx 的回复:
参考在线cron的表达式生成器设计 http://cron.qqe2.com/
winform 的一点逻辑问题
lichjx 2016-09-28
  • 打赏
  • 举报
回复
参考在线cron的表达式生成器设计 http://cron.qqe2.com/

111,128

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧