Silverlight 调用outlook发邮件。
在开始Silverlight程序时有可能会用到发邮件于是就在想到调用outlook来进行发邮件
由于从网上找些资料完成了
现在调用发邮件基本没有问题了
注意得引用一个dll【Microsoft.CSharp】,因为要用到 dynamic所以要引用
private static dynamic outlook;private static bool InitializeOutlook(){try{//如果当前已经打开了Oulook应用,直接获取。outlook = AutomationFactory.GetObject("Outlook.Application");return true;}catch (Exception){try{// 启动Outlook应和程序,并显示outlook = AutomationFactory.CreateObject("Outlook.Application");outlook.Session.GetDefaultFolder(6).Display();outlook.ActiveWindow.WindowState = 1; //小窗体模式 minimizedreturn true;}catch (Exception){// 启动outlook出现在异常,退出,可能是没有安装或其它原因。return false;}}}///发送邮件操作public static bool SendEmail(string mailTo, string subject, string body, bool autoSend){if (!InitializeOutlook()){return false;}try{//Microsoft.Office.Interop.Outlook.NameSpacedynamic email = outlook.CreateItem(0);//0: olMailItem 动态创建一个发邮件对象email.To = mailTo; //收件人 email.BodyFormat = 2; //2: olFormatHTMLemail.Subject = subject; //邮件标题email.HTMLBody = body; //内容if (autoSend) //自动发送邮件{email.Send();}else{email.Display(false);}}catch (Exception ex){MessageBox.Show(ex.Message);return false;}return true;}
发件邮件界面,发送完后,可以到Outlook的已发送邮件可以找到刚才发送的邮件。
看是不是真的发送去了
收取一下邮件,可以在outlook的收件箱里看到刚才发送的邮件了。
没有想到 在silverlight下调用outlook还是挺方便的.
页:
[1]