【发布时间】:2015-05-09 10:08:54
【问题描述】:
我编写了一个需要管理员权限的 C# 代码。使用此应用程序,我正在尝试创建一个 Outlook 应用程序/邮件项目以打开 Outlook 撰写窗口。但是,Outlook 2013 已经在没有管理员权限的情况下运行。我正在使用以下代码,但由于创建的应用程序/邮件项和已运行的 Outlook 实例具有不同的权限,因此会引发异常。
Microsoft.Office.Interop.Outlook.Application app = new Microsoft.Office.Interop.Outlook.Application();
Microsoft.Office.Interop.Outlook.MailItem mailItem = app.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem);
是否可以将应用程序/邮件项创建为当前用户而不是管理员(类似于通过提供当前用户的用户名和密码以当前用户身份运行进程)?
Outlook 需要在没有管理员权限的情况下运行才能获得功能性索引服务。
这里是异常详情:
System.Runtime.InteropServices.COMException was unhandled
HResult=-2146959355
Message=Retrieving the COM class factory for component with CLSID {0006F03A-0000-0000-C000-000000000046} failed due to the following error: 80080005 Server execution failed (Exception from HRESULT: 0x80080005 (CO_E_SERVER_EXEC_FAILURE)).
Source=mscorlib
ErrorCode=-2146959355
【问题讨论】:
标签: c# exception outlook administrator