【问题标题】:Why am I getting an exception whenever I use the CFileDialog?为什么每次使用 CFileDialog 时都会出现异常?
【发布时间】:2011-09-01 07:15:58
【问题描述】:

每当我在调试器下运行我的应用程序时,在使用 CFileDialog 浏览要打开的文件时都会出现以下异常

First-chance exception at 0x769db9bc in MyApp.exe: 0x000006BA: The RPC server is unavailable.
First-chance exception at 0x74e8cd99 in MyApp.exe: 0xC0020043: An internal error occurred in RPC.
MyApp.exe has triggered a breakpoint

在 Windows 7 64 位上使用 VS2008 会发生这种情况,在 XP 下不会发生同样的事情。调用堆栈上没有有用的符号表明为什么会发生这种情况,我可以通过在调试器中关闭异常来避免这个问题,但我想知道为什么会发生这种情况以及如何避免它。

【问题讨论】:

    标签: c++ exception mfc


    【解决方案1】:

    可以安全地忽略第一次机会异常消息。在这种情况下,这是 Windows API 内部实现的一部分。异常被抛出并在某处捕获。您只需要在调试器中关闭第一次机会异常中断。

    【讨论】:

      【解决方案2】:

      只是添加到上面亚历克斯的答案,可以忽略异常。要在 VS2010 下执行此操作,请执行以下操作;

      • 调试/异常
      • 添加,类型为Win32异常,编号0x6ba
      • 转到 Win32 异常,并取消勾选在 6ba 下抛出

      这允许您在调试期间保持其他异常处于活动状态

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-09-30
        • 2020-02-25
        • 1970-01-01
        • 1970-01-01
        • 2017-11-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多