Error handling 无法捕获IronPython中的.NET错误

Error handling 无法捕获IronPython中的.NET错误,error-handling,ironpython,Error Handling,Ironpython,调用对象的不同方法时,我无法处理.NET Dll中的错误。我在IronPython中遇到了以下错误: 未处理的异常:System.AccessViolationException:尝试读取或写入受保护的内存。这通常表示其他内存已损坏。 在Microsoft.Scripting.Interpreter.FuncCallInstruction`2.Run(解释器框架) 在Microsoft.Scripting.Transparer.Transparer.Run(解释器框架)上运行 在Microsof

调用对象的不同方法时,我无法处理.NET Dll中的错误。我在IronPython中遇到了以下错误:

未处理的异常:System.AccessViolationException:尝试读取或写入受保护的内存。这通常表示其他内存已损坏。
在Microsoft.Scripting.Interpreter.FuncCallInstruction`2.Run(解释器框架)
在Microsoft.Scripting.Transparer.Transparer.Run(解释器框架)上运行
在Microsoft.Scripting.explorer.LightLambda.Run3[T0,T1,T2,TRet](T0 arg0,T1 arg1,T2 arg2)
在System.Dynamic.UpdateDelegates.UpdateAndExecute2[T0,T1,TRet](调用站点,T0 arg0,T1 arg1)

我添加了try和exception作为:

导入系统
对于目录中的i(对象):
尝试:
getattr(对象,i)()
将System.AccessViolationException导出为e:
打印i,e
将例外情况导出为e:
打印i,e

但是,
未处理的异常
仍然会使我的代码崩溃。在这种情况下如何进行错误处理。

对象来自哪里?如果这是实际的非托管AccessViolationException(不是由托管用户代码引发的),则不会捕获它。它是C#的.NET dll库中的对象。有没有办法让控制台输出到文件中,这样我就可以分析输出并找到受影响的方法?对象来自哪里?如果这是实际的非托管AccessViolationException(不是由托管用户代码引发的),则不会捕获它。它是C#的.NET dll库中的对象。有没有办法将控制台输出获取到文件中,以便分析输出并找到受影响的方法?