C# 打开电子邮件软件的具体方法

时间:2022-07-02 10:53:07 

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

[C#]
//使用客户端打开“https://www.jb51.net” System.Diagnostics.Process.Start(www.jb51.net);
打开电子邮件软件
使用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));

标签:C#,电子邮件
0
投稿

猜你喜欢

  • Spring如何解决单例bean线程不安全的问题

    2023-12-18 23:50:20
  • BeanDefinitionRegistryPostProcessor如何动态注册Bean到Spring

    2023-11-24 12:56:16
  • maven下载jar包改用阿里云maven库的方法

    2023-02-13 07:41:58
  • 浅谈SpringBoot资源初始化加载的几种方式

    2022-03-09 08:14:34
  • C#以流方式读socket超时设置的实例

    2021-10-04 15:09:11
  • Java多线程模拟银行系统存钱问题详解

    2023-11-28 22:13:32
  • Android利用RecyclerView实现全选、置顶和拖拽功能示例

    2023-06-05 18:21:22
  • 浅谈C#多线程简单例子讲解

    2023-06-24 03:03:50
  • 非常实用的侧滑删除控件SwipeLayout

    2023-02-01 14:52:39
  • SpringBoot如何获取Kafka的Topic列表

    2023-11-26 16:01:52
  • Java实现短信验证码的示例代码

    2023-11-09 03:22:47
  • java打印指定年月的日历

    2023-11-11 19:21:19
  • Java Valhalla Project项目介绍

    2021-10-03 00:29:28
  • Android内存优化操作方法梳理总结

    2023-12-24 17:57:03
  • spring cloud gateway中如何读取请求参数

    2021-08-19 16:19:02
  • Android 7.0 运行时权限弹窗问题的解决

    2023-06-30 18:26:13
  • SpringBoot 如何从配置文件读取值到对象中

    2023-10-13 15:43:15
  • C# 运用params修饰符来实现变长参数传递的方法

    2023-07-21 22:27:55
  • SpringBoot多数据源切换实现代码(Mybaitis)

    2021-11-07 11:15:50
  • C/C++根据年月日计算星期几(蔡勒公式篇)

    2023-12-05 00:48:16
  • asp之家 软件编程 m.aspxhome.com