Visual Studio 2015 - 如何在开始调试应用程序时停止EntryPointNotFoundException?

时间:2015-09-15 13:49:26

标签: exception visual-studio-2015 visual-studio-debugging

我在Windows 7笔记本电脑上运行Visual Studio 2015,每次在IDE的调试器中启动应用程序时,都会遇到以下异常:

  

无法在DLL“advapi32.dll”中找到名为“EventSetInformation”的入口点。

enter image description here

我在coreclr repository on github中找到了对此的引用,表明这是在Windows 8中添加的API。我的情况类似于github问题,我可以点击“继续”忽略异常和我的应用运行得很好。然而,这真的很烦人,因为我不能只是开始调试应用程序而不等待抛出这个异常,所以我可以手动继续经过它。

我的问题是,是否有人知道我是否可以阻止此异常在IDE中崩溃?这种情况目前只是令人讨厌,但我想摆脱它。

作为参考,在这种情况下,更改Visual Studio中的“异常”设置似乎不会更改行为。以下是启用和禁用CLR异常的屏幕截图,以及例外情况:

已禁用CLR例外 screenshot with CLR exceptions disabled

已启用CLR例外 screenshot with CLR exceptions enabled

解决方案

这是由一般调试器选项引起的,它似乎覆盖了任何特定于异常的设置。正如@John在下面的回答中指出的那样,您可以禁用调试器选项来停止此行为。当选中此选项时,我会得到描述的断点,但取消检查它会停止并提供我想要的内容:

Option to remove to disable this behavior

3 个答案:

答案 0 :(得分:14)

通过截图的外观,我猜你已经启用了调试器选项"当异常跨越AppDomains或托管/本地边界时中断#34;。转到Debugger->选项并取消选中该选项(从顶部开始的第3个)

答案 1 :(得分:6)

一位同事刚刚遇到这个问题,他必须检查工具中的“启用我的代码”框 - >选项 - >调试 - >一般情况下清除“当异常跨越AppDomains或托管/本地边界时中断”。

答案 2 :(得分:0)

请参阅此屏幕截图,我已启用调试器选项"在跨越AppDomains或托管/本机边界时断开"。转到Debugger->选项并取消选中该选项。它的工作正常。enter image description here