如何处理非托管代码块创建的异常
在我的代码中,我通过进程调用运行 exe 文件。 如何处理exe文件产生的异常。 有人可以帮忙吗?
In my code i am running an exe file through a process call.
How to handle exception generated by the exe file.
Can someone please help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果 exe 文件是非托管的,则无法捕获它引发的异常。
您可以做的是在进程退出后检查其错误代码。为此,请使用
Process
类启动 exe。它有一个属性可以为您提供退出代码。如果 exe 是托管程序集,您将能够在单独的 AppDomain 中运行它,并捕获它引发的异常。
If the exe file is unmanaged, you can't catch exceptions that it throws.
What you can do, is check its error code once the process exits. To do that use the
Process
class to launch the exe. It has a property that gives you the exit code.If the exe was a managed assembly, you would have been able to run it in a separate AppDomain, and catch the exception it threw.