[英]How send email with an email window already opened, using Outlook Interop in c#?
[英]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.