使用Process.Start方法可以在浏览器打开指定的URL。代码如下所示。
使用Process.Start方法还可以打开电子邮件软件(Mail)。
下面的代码是打开Mail向邮箱地址lxc880615@163.com”送信的例子。
补充:“mailto:lxc880615@163.com”和“mailto:?to=lxc880615@163.com”一样。
根据RFC2368中所介绍使用逗号可以指定复数邮件地址。
下面的代码是指定“test1@sample.com”和“test2@sample.com”的例子。
System.Diagnostics.Process.Start("mailto:test1@sample.com,test2@sample.com");
指定主题、内容、CC、BCC
使用Process.Start方法还可以指定主题、内容等。下面的代码是指定主题为“你好”的例子。
System.Diagnostics.Process.Start("mailto:lxc880615@163.com?subject=您好");
和上面的方法一样,下面的代码是指定内容、CC、BCC的例子。
//发送地址 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类的详细说明请参考这里。
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));