C#调用本地Outlook发送邮件实例

转载 2015年11月18日 14:55:24

创建一个新的winform,在winform中添加一个button,如下:


双击SendMail按钮,添加如下代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net.Mail;
using System.Net;
using Outlook = Microsoft.Office.Interop.Outlook;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Outlook.Application olApp = new Outlook.Application();
            Outlook.MailItem mailItem = (Outlook.MailItem)olApp.CreateItem(Outlook.OlItemType.olMailItem);
            mailItem.To = "xxxxxxxxx@xxx.com";
            mailItem.Subject = DateTime.Now.ToString("yyyyMMdd") + "_报表";
            mailItem.BodyFormat = Outlook.OlBodyFormat.olFormatHTML;

            string content = "附件为" + DateTime.Now.ToString("yyyyMMdd") + " 数据,请查阅,谢谢!";
            content = "各收件人,<br/> <br/>请重点关注以下内容:<br/> <br/>" + content + "<br/> <br/><br/><br/>此邮件为系统自动邮件通知,请不要直接进行回复!谢谢。";
            content = content + "<br/>\r\n                                    <br/>Best Regards!\r\n                                    <br/>\r\n                                    <br/>          \r\n                                    <br/>==============================================\r\n                               \r\n                                    <br/>\r\n                                    <br/>\r\n                \r\n             ===============================================";


            mailItem.HTMLBody = content;
            mailItem.Attachments.Add(@"C:\test.rar");
            ((Outlook._MailItem)mailItem).Send();
            mailItem = null;
            olApp = null;
        }
        
    }
}


其中引用了using Outlook = Microsoft.Office.Interop.Outlook; 需要在Reference里添加如下库:



在执行前修改收件人邮箱地址和附件地址:

mailItem.To = "xxxxxxxxx@xxx.com";
mailItem.Attachments.Add(@"C:\test.rar");
(由于没有添加判断附件的语句,所以没有找到附件时不会发送邮件。)


完成后按F5执行,点击button,接收邮件如下:



具体使用过程中可根据需要调整邮件内容和是否添加附件等。

参考:http://www.cnblogs.com/allen0118/p/4622798.html

C#调用Outlook发送邮件

  • 2013年07月31日 21:31
  • 14KB
  • 下载

C# 调用outlook 发送邮件 或添加附件发送

1. 这个是不调用IE Mailto 来发送的,调用win API来Mailto.ShellExecute(0, String.Empty, "mailto:vcool011@hotmail.com?...

针对C#调用OutLook发送邮件模块出现的各类问题解决方案

最近Tony小编在VS2003+Office 2010的环境下编写了一个使用OutLook发送邮件的功能(具体模块代码参见本人之前文章),在模块从无到有,从测试到收尾的过程中遇见很多错误和异常,那么下...

python用调用outlook发送邮件

  • 2017年11月22日 15:03
  • 885B
  • 下载

当使用Outlook2007发送邮件时,收件人收到名为Winmail.dat的附件

很多Outlook用户在向非Outlook邮箱发送邮件时收到这样的反馈,收件者收到的邮件附件并不是您原始邮件中发送的附件,而是一个名为Winmail.dat的附件。 ...

C#发送邮件实例

  • 2016年06月25日 14:39
  • 75KB
  • 下载

javamail发送邮件的简单实例

今天学习了一下JavaMail,javamail发送邮件确实是一个比较麻烦的问题。为了以后使用方便,自己写了段代码,打成jar包,以方便以后使用。呵呵  以下三段代码是我的全部代码,朋友们如果想用,直...

c#发送邮件实例(可以添加附件)

  • 2016年02月14日 16:18
  • 43KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C#调用本地Outlook发送邮件实例
举报原因:
原因补充:

(最多只允许输入30个字)