繁体   English   中英

打开Outlook后无法创建带有Outlook Interop的电子邮件

[英]Failing to create an email with outlook interop when outlook has already been opened

您如何打开前景窗口? 我尝试了下面的代码,但是当Outlook实例已经在运行时,它不起作用-

System.Diagnostics.Process[] processes = System.Diagnostics.Process.GetProcessesByName("OUTLOOK");

int processCount = processes.Length;
if (processCount != 0)
{
    **outlookApp = Marshal.GetActiveObject("Outlook.Application") as Microsoft.Office.Interop.Outlook.Application;** this is throwing the below error **
}
else
{
    outlookApp = new Microsoft.Office.Interop.Outlook.Application();
}

我得到:

Error:
Operation unavailable (Exception from HRESULT: 0x800401E3 (MK_E_UNAVAILABLE))

有人可以提供其他方法或对以上代码进行更改吗?

当我遇到同样的问题时,请多花2美分。

似乎Visual Studio通常以管理员身份运行,而Outlook以用户权限运行是问题所在。

如果关闭Outlook并运行代码,它将运行正常。

如果我在运行Outlook的情况下在Visual Studio外部(从Bin文件夹中)运行应用程序,它也可以正常工作。

如果我以管理员身份运行Outlook并在Visual Studio中运行该应用程序,则可以正常运行。

如果Outlook正在运行但是具有不同的特权,我还没有找到一种获取Outlook Application类实例的解决方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM