自動メールのWindowsサービスソリューション
6747 ワード
先日、ある友人から、ローカルでデータを取得した後、指定された時刻にターゲットメールボックスにメールを送信するプログラムを書くように聞かれました.ほほほ、私も菜鸟で、书くのがよくなくて、どうぞよろしくお愿いします、ありがとうございます.
Windowsサービスを構築し、指定された時点で、プロファイルから送信者情報(SMTPアドレス、ユーザー名、パスワードなどを含む)を読み出し、メールのタイトルと内容を定義して送信できます.もちろん、このWindowsサービスをインストールし、自動的に起動するように構成する必要があります.
-------------------------------------
ソースコードのダウンロードはここをクリックしてください
-------------------------------------
では、次にWindowsサービスを構築します(TImerコントロールでタイミングリフレッシュを制御します):
Windowsサービスインストーラを作成するには、「ttp://www.cnblogs.com/tuyile006/archive/2006/11/27/573654.html」を参照してください.
Windowsサービスを構築し、指定された時点で、プロファイルから送信者情報(SMTPアドレス、ユーザー名、パスワードなどを含む)を読み出し、メールのタイトルと内容を定義して送信できます.もちろん、このWindowsサービスをインストールし、自動的に起動するように構成する必要があります.
-------------------------------------
ソースコードのダウンロードはここをクリックしてください
-------------------------------------
では、次にWindowsサービスを構築します(TImerコントロールでタイミングリフレッシュを制御します):
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.ServiceProcess;
using System.Text;
using System.Net.Mail;
using System.Net;
using System.Configuration;
namespace MailServer
{
public partial class Service1 : ServiceBase
{
public Service1()
{
InitializeComponent();
}
protected override void OnStart(string[] args)
{
//
while (DateTime.Now.Second % 2 == 0)
{
//
SmtpClient client = new SmtpClient(
ConfigurationManager.AppSettings["smtpClient"],
int.Parse(ConfigurationManager.AppSettings["smtpProt"]));
//
client.Credentials = new NetworkCredential(
ConfigurationManager.AppSettings["from_address"],
ConfigurationManager.AppSettings["from_password"]);
//
MailMessage mail = new MailMessage(
new MailAddress(ConfigurationManager.AppSettings["from_address"], ConfigurationManager.AppSettings["from_displayName"]),
new MailAddress(ConfigurationManager.AppSettings["to_address"], ConfigurationManager.AppSettings["to_displayName"]));
//
mail.Subject = " [" + DateTime.Now.ToString() + "]";
//
mail.Body = Guid.NewGuid().ToString();
//
client.Send(mail);
}
}
protected override void OnStop()
{
// TODO: 。
}
}
}
-------------------
:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="smtpClient" value="smtp.126.com"/>
<add key="smtpProt" value="25"/>
<add key="from_address" value=" :[email protected]"/>
<add key="from_displayName" value="Mr.Yang"/>
<add key="from_password" value=" "/>
<add key="to_address" value="[email protected]"/>
<add key="to_displayName" value="** "/>
</appSettings>
</configuration>-------------------------------------
-------------------------------------
Windowsサービスインストーラを作成するには、「ttp://www.cnblogs.com/tuyile006/archive/2006/11/27/573654.html」を参照してください.