use*_*058 5 c++ exception try-catch extract-error-message
我有一个c ++ dll,我需要调试.由于我使用dll的情况,我无法通过调用应用程序调试它.
因此,我创建了一个try -catch,其中catch将异常写入文件.
需要调试的行涉及来自第三方dll的导入类,因此我无法知道它是什么类型的异常.当我尝试catch(异常e)时,没有消息写入该文件.所以我尝试了catch(...),它确实触发了一些东西:
使用std :: exception :: what,写入文件的唯一内容是"1".使用std :: exception :: exception,该文件收到以下代码:"0579EF90".
有没有办法让我检索有关抛出的异常的有意义的信息?
TIA
CG
如果你不使用catch(KnownExceptionType ex)和使用关于KnownExceptionType的knwoledge来提取信息,那么你不能.
当你抓到catch(...)你时几乎迷失了,你知道你处理了一个异常,但那里没有类型信息,你几乎无能为力.
你是更糟糕的情况,从库中出来的异常,你没有关于异常的信息,即使你有lib的头,也不需要在那里定义异常类型.