清空Outlook加载项会导致立即崩溃

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

环境:VS 2015社区版更新3;展望2016; Windows 10 x64;适用于所有人的最新补丁。

使用VSTO和C#创建新的Outlook加载项时,Visual Studio会创建一个空项目。 (由于它只是一个空项目的样板,我不会在这里包含它。)但是,尝试启动这个空项目会导致Outlook崩溃:

发生了FatalExecutionEngineError

消息:托管调试助手'FatalExecutionEngineError'检测到'C:\ Program Files(x86)\ Microsoft Office \ root \ Office16 \ outlook.exe'中的问题。

附加信息:运行时遇到致命错误。错误的地址在0x730e1302,在线程0xfb4上。错误代码是0xc0000005。此错误可能是CLR中的错误,也可能是用户代码的不安全或不可验证部分中的错误。此错误的常见来源包括COM-interop或PInvoke的用户编组错误,这可能会破坏堆栈。

我在InternalStartupThisAddIn_Startup方法上都设置了断点;在被击中之前抛出异常。我也尝试构建为x86,x86_64和Any CPU,但无济于事。

谁能给我指导这里出了什么问题?

c# visual-studio-2015 outlook vsto outlook-addin
1个回答
1
投票

答:默认情况下,新的加载项是Debug版本,点击F5会在调试模式下运行它们,这会更慢。这是Outlook的一个问题,它将慢速加载项视为本质上有缺陷,将其标记为已损坏,并中止Outlook以便下次Outlook启动时可以跳过“已损坏”插件。

将我的代码切换到Release版本并进行正常运行,无需调试支持,解决了这个问题。

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