使用C#从Outlook Express发送电子邮件

nit*_*thi 2 c#

如何在C#2008中打开Outlook Express?

如何将文件从我的应用程序附加到Outlook?

Tho*_*que 8

Outlook Express已经过时了很长时间我甚至不记得上次我真正看到有人使用它...这是一个安全噩梦,并且已经从Windows很久以前删除了

AFAIK,Outlook Express没有用于以编程方式操作它的API(但Outlook确实如此).正如其他人在评论中建议的那样,您应该直接从C#代码发送邮件,而不涉及Outlook Express.查看System.Net.MailMSDN中的命名空间,它包含您可能需要的所有内容(包括代码示例)


Mez*_*Mez 8

正如其他人指出的那样,如果您只想发送邮件,最好使用System.Net.Mail.

如果由于某种原因你想使用Outlook发送邮件,你将不得不使用Office互操作.
像这样的东西:

 using Outlook = Microsoft.Office.Interop.Outlook;

    Outlook.Application oApp = new Outlook.Application();

                        Outlook.MailItem email = (Outlook.MailItem)(oApp.CreateItem(Outlook.OlItemType.olMailItem));
                        email.Recipients.Add("someEmailAddress@dom.com");
                        email.Subject = "Subject";
                        email.Body = "Message";


                        ((Outlook.MailItem)email).Send();
Run Code Online (Sandbox Code Playgroud)


GBe*_*gen 6

如果您要使用用户的默认电子邮件客户端撰写电子邮件,请尝试以下操作:

using System;
using System.Diagnostics;

namespace RunMailTo
{
    class Program
    {
        static void Main(string[] args)
        {
            Process.Start("mailto://name@example.com");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

您可以向mailto:URL添加其他参数以设置主题,正文等.有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/aa767737%28VS.85%29.aspx.