我正在尝试创建一个简单的约会剩余应用程序,我将在约会时间提前15分钟预约剩余时间。我在表单加载时调用timer1_Tick(object sender,EventArgs e)函数。
private void timer1_Tick(object sender, EventArgs e)
{
try
{
DateTime now = DateTime.Now;
//now = now.AddMinutes(10);
now = now + TimeSpan.FromMinutes(15);
string longtime = now.ToString("hh:mm:ss tt");// "03:46:00 PM";
string shortdate = now.ToString("dd/MM/yyyy"); //"21/02/2015";
MySqlCommand cmdchk = new MySqlCommand("select * from tbl_appointment where adate=@adte and atime=@time", con);
cmdchk.Parameters.AddWithValue("@adte", shortdate);
cmdchk.Parameters.AddWithValue("@time", longtime);
dr = cmdchk.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
appointmentid = dr.GetInt32(0);
smsmobile = dr.GetString(2);
}
dr.Close();
Frm_app_pop pop = new Frm_app_pop();
pop.appointmentid = appointmentid.ToString();
pop.Show();
words[0] = appointmentid;
}
dr.Close();
dr.Dispose();
if (flags.remiderflag == true)
{
remindtimer.Start();
}
dr.Close();
}
catch (Exception ex)
{
string exce = ex.Message;
}
}
我已将时间间隔设置为1秒。每秒运行一次timer1_Tick函数,该函数连接到数据库并获取longtime
中的时间,这是我想要设置提醒的时间。
当我运行此代码时,它运行正常,但我没有收到任何提醒(应使用pop.show()
显示),此代码中没有任何错误。
请分享此问题的解决方案。
答案 0 :(得分:0)
检查网络连接和防火墙检查。从命令行,您必须运行以下命令,如果成功,您可以发送邮件。
之后将ssl.enable属性设置为false。
答案 1 :(得分:0)
尝试增加mail.imap.connectiontimeout
javamail属性的值,例如10000
。