Windows服务定时问题

昙花一现1 2006-04-20 11:35:58
如下代码,要实现定时发送邮件到指定邮箱:但收不到邮件,请问如何解决?

protected override void OnStart(string[] args)
{

// CMail mail = new CMail();
// mail.SengMail("cd8010@126.com","111111","pppp");
}

/// <summary>
/// 停止此服务。
/// </summary>
protected override void OnStop()
{
// TODO: 在此处添加代码以执行停止服务所需的关闭操作。
}

private void timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
try
{
CSendMail.SendMail("cd8010@126.com","cd8010@tom.com","body","1111","smtp.126.com","cd8010","198010");
}
catch ( Exception /*exp*/ )
{

}
}



}

public class CSendMail
{
public static void SendMail(string m_stringMailFrom,string stringMailTo,
string stringMailBody,string stringMailSubject,
string m_stringSmtpMailServer,string m_stringMailUser,
string m_stringMailPassword)
{
System.Web.Mail.MailMessage SendMailMessage = new System.Web.Mail.MailMessage();
SendMailMessage.From = m_stringMailFrom;
SendMailMessage.To = stringMailTo;
SendMailMessage.Body = stringMailBody;
SendMailMessage.BodyFormat = MailFormat.Html;
SendMailMessage.Subject = stringMailSubject;
//是否需要验证,一般是要的
SendMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate","1");
//自己邮箱的用户名
SendMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername",m_stringMailUser);
//自己邮箱的密码
SendMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword",m_stringMailPassword);
System.Web.Mail.SmtpMail.SmtpServer = m_stringSmtpMailServer;
System.Web.Mail.SmtpMail.Send(SendMailMessage);
}
...全文
340 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
veryhappy 2006-04-20
  • 打赏
  • 举报
回复
你的time事件应该没有被触发到
还是使用线程来处理
Knight94 2006-04-20
  • 打赏
  • 举报
回复
首先,你的程序是否是正确的,即不用service,在普通的app中是否成功;

如果前一步没有问题,在service中加入输出信息,看看运行到哪一步出现问题;
其次,建议在service中,用thread来替换timer。

111,092

社区成员

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

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

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