在开始Silverlight程序时有可能会用到发邮件
由于从网上找些资料完成了
注意得引用一个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; //小窗体模式 minimized return 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.NameSpace dynamic email = outlook.CreateItem(0); //0: olMailItem 动态创建一个发邮件对象 email.To = mailTo; //收件人 email.BodyFormat = 2; //2: olFormatHTML email.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还是挺方便的.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。