如何打开展望窗口?我尝试了下面的代码,但是当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))
有人可以提供替代方法或更改上述代码吗?
答案 0 :(得分:0)
答案 1 :(得分:0)
因为我遇到了同样的问题所以加上我的2美分。
似乎Visual Studio通常作为管理员运行,而Outlook正在以用户权限运行是问题所在。
如果关闭Outlook并运行代码,它可以正常工作。
如果我在Visual Studio之外运行应用程序(来自Bin文件夹)并运行Outlook,它也可以正常工作。
如果我以管理员身份运行Outlook并在Visual Studio中运行该应用程序,则可以正常工作。
如果Outlook正在运行但是使用不同的权限,我还没有找到获取Outlook Application
类实例的解决方法。