C# · 12月 23, 2021

c# – Marshal.GetActiveObject(“Outlook.Application”)在使用提升的权限进行调试时抛出MK_E_UNAVAILABLE

当Visual Studio未作为管理员启动时,此代码在版本r调试中运行没有问题. Marshal.GetActiveObject(“Outlook.Application”);

但是,当我以管理员身份启动Vs并在调试中运行相同的行时,我收到以下错误:

System.Runtime.InteropServices.COMExceptionOperation unavailable (Exception from HRESULT: 0x800401E3 (MK_E_UNAVAILABLE))

我怎样才能解决这个问题.

解决方法 我猜你是以管理员身份运行Visual Studio(以管理员身份运行启动),而Outlook是以用户身份打开的,用户是在Windows登录下登录的.因此,Visual Studio在与Outlook客户端不同的用户下运行.