2014-09-30 50 views
0

我想要做的是我有一个标签和MouseLeftButtonDown事件,当用户点击标签打开Outlook应用程序,但每当再次点击它会遇到一个异常 这里是代码我有`从WPF应用程序打开Outlook

if (e.LeftButton == MouseButtonState.Pressed) 
{ 
    Microsoft.Office.Interop.Outlook.Application objOutlook = new Microsoft.Office.Interop.Outlook.Application(); 
    Microsoft.Office.Interop.Outlook.MailItem mic = objOutlook.CreateItem (Microsoft.Office.Interop.Outlook.OlItemType.olMailItem) as Microsoft.Office.Interop.Outlook.MailItem; 
    mic.To = "[email protected]"; 
    mic.Subject = "l"; 
    mic.Body = "h"; 
    mic.Display(true); 
} 

这里是我得到的例外[COM异常] [1]

[1]:

+0

我把它作为[email protected]用于隐私,但是当我需要运行该程序时,我将其更改回我的支持电子邮件 – Dexter90 2014-09-30 06:16:25

+0

Google对于“outlook interop rpc_e_call_rejected”给出了许多结果,例如, [本](http://blogs.msdn.com/b/akashb/archive/2008/11/03/unable-to-instantiate-outlook-object-from-visual-studio-2008-on-vista-with- UAC的on.aspx)。你有什么尝试? – cremor 2014-09-30 07:03:00

+0

您是否以管理员身份运行Visual Studio? – 2014-09-30 07:07:14

回答

1

怎么样

var url = "mailto:[email protected]?subject=Test&body=Hello"; 
System.Diagnostics.Process.Start(url); 
+1

我忘了提及这只会打开您的默认浏览器,不是特别的Outlook。 – coder0815 2014-09-30 10:44:42

+0

更好地打开默认浏览器,因为也许有些用户不喜欢使用outlook谢谢 – Dexter90 2014-09-30 11:05:26

+0

你知道我怎么可以改变这个还包括附件文件?我试过&附件=“+文件路径 – Ralt 2014-11-17 14:29:06