C# 打开电子邮件软件

使用客户端打开指定的URL

使用Process.Start方法可以在浏览器打开指定的URL。代码如下所示。

[C#]

//使用客户端打开“http://www.baidu.com” System.Diagnostics.Process.Start(www.baidu.com);

打开电子邮件软件

使用Process.Start方法还可以打开电子邮件软件(Mail)。

下面的代码是打开Mail向邮箱地址lxc880615@163.com”送信的例子。

[C#]

//打开邮件客户端设定“To”为“lxc880615@163.com System.Diagnostics.Process.Start("mailto: lxc880615@163.com");

补充:“mailto:lxc880615@163.com”和“mailto:?to=lxc880615@163.com”一样。

指定复数的邮箱地址

根据RFC2368中所介绍使用逗号可以指定复数邮件地址。

下面的代码是指定“test1@sample.com”和“test2@sample.com”的例子。

[C#]

System.Diagnostics.Process.Start("mailto:test1@sample.com,test2@sample.com");

指定主题、内容、CC、BCC

使用Process.Start方法还可以指定主题、内容等。下面的代码是指定主题为“你好”的例子。

[C#]

System.Diagnostics.Process.Start("mailto:lxc880615@163.com?subject=您好");

和上面的方法一样,下面的代码是指定内容、CC、BCC的例子。

[C#]

//发送地址
string to = " lxc880615@163.com"; 
//主题 
string subject = "您好"; 
//内容 
string body = "罗旭成欢迎您。"; //
CC string cc = "cc@163.com";//
BCC string bcc = "bcc@163.com"; //打开标准的邮件客户端 System.Diagnostics.Process.Start( string.Format("mailto:{0}?subject={1}&body={2}&cc={3}&bcc={4}", to, subject, body, cc, bcc));

上面的代码中的主题和内容中都出现了文字,一般不会出现错误,但如果“&”、“=”、改行文字等出现时就会发生错误,这时需要进行编码设定。

下面的代码是对上面的代码进行修改使用URL编码的例子。因为需要使用HttpUtility方法,所以必需在引用中追加System.Web.dll。关于编码方法所指定的Encoding类的详细说明请参考这里

[C#]

System.Text.Encoding enc = System.Text.Encoding.GetEncoding("gb2312");
//发送地址 
string to = "lxc880615@163.com "; 
//主题 
string subject = "您好"; 
subject = System.Web.HttpUtility.UrlEncode(subject, enc); 
//内容
string body = "罗旭成\r\n欢迎您"; 
body = System.Web.HttpUtility.UrlEncode(body, enc);//
CC string cc = "cc@163.om"; //
BCC string bcc = "bcc@163.com "; 
//打开标准的软件客户端
 System.Diagnostics.Process.Start( string.Format("mailto:{0}?subject={1}&body={2}&cc={3}&bcc={4}", to, subject, body, cc, bcc));


 

posted @ 2013-11-03 19:39  Jara  阅读(1483)  评论(15编辑  收藏  举报