Outlook 兑换错误:System.ComponentModel.Win32Exception:句柄无效

问题描述 投票:0回答:1

我有用 C# 创建的 Outlook MAPI 测试套件,它使用 Redemption。

在 try{} catch{} 块下面执行它会抛出下面的异常。知道需要做什么吗?

try
{
    _RDOSession = new Redemption.RDOSessionClass();
    _RDOSession.MAPIOBJECT = OutlookConnection.Instance.nameSpace.MAPIOBJECT;
    _MAPIUtils = new MAPIUtils();
}
catch (System.Exception e)
{
    throw new HarnessException("OutlookRedemption threw exception for _RDOSession", e);
}

.
.
.
.

try
{
    _OutlookApplication = new Microsoft.Office.Interop.Outlook.ApplicationClass();
}
catch (System.Exception e)
{
    throw new HarnessException("OutlookConnection threw exception for _OutlookApplication", e);
}

它按顺序显示以下错误:

OutlookConnection 引发 _OutlookApplication 异常 SyncHarness.HarnessException:OutlookConnection 抛出异常 _OutlookApplication ---> System.Runtime.InteropServices.COMException (0x80080005):由于以下错误,检索 CLSID 为 {0006F03A-0000-0000-C000-000000000046} 的组件的 COM 类工厂失败:80080005。 在 SyncHarness.OutlookConnection..ctor()

OutlookRedemption 引发了 _RDOSession SyncHarness.HarnessException 异常:OutlookRedemption 引发了 _RDOSession 异常 ---> System.ComponentModel.Win32Exception:句柄在 System.Drawing.Graphics.CopyFromScreen 处无效(Int32 sourceX、Int32 sourceY、Int32 destinationX、Int32 destinationY、大小 blockRegionSize, CopyPixelOperation copyPixelOperation)

尝试根据https://learn.microsoft.com/en-us/troubleshoot/windows-server/application-management/error-8008005-when-start-complus-applications

修改注册表

但没有帮助。

c# nunit outlook-addin mapi outlook-redemption
1个回答
0
投票

0x80080005
CO_E_SERVER_EXEC_FAILURE
,如果您的应用程序和 Outlook 的安全上下文不同,很可能会发生这种情况。如果任一应用程序以提升的权限运行(以管理员身份运行),请确保两个应用程序都运行,或者都不运行。

© www.soinside.com 2019 - 2024. All rights reserved.