混合客户端和.NET库错误处理。
我们有一个公开COM的.NET库。客户机可能是C或遗留VB6代码,因此支持COM。在运行时,我们不知道客户端是VB6还是.NET 问题是如何进行错误处理。NET客户端可以处理异常,但VB6使用不同的错误处理。我们如何透明地为这两种突发事件提供适当的错误处理。我们需要VB6的错误类型处理工作,我们需要.NET尝试捕捉工作。注意,我们并不总是能够控制客户端代码混合客户端和.NET库错误处理。,.net,exception,vb6,interop,error-reporting,.net,Exception,Vb6,Interop,Error Reporting,我们有一个公开COM的.NET库。客户机可能是C或遗留VB6代码,因此支持COM。在运行时,我们不知道客户端是VB6还是.NET 问题是如何进行错误处理。NET客户端可以处理异常,但VB6使用不同的错误处理。我们如何透明地为这两种突发事件提供适当的错误处理。我们需要VB6的错误类型处理工作,我们需要.NET尝试捕捉工作。注意,我们并不总是能够控制客户端代码 我们是否将所有引发的异常转换为COM异常?谢谢您的帮助。我的建议在您的.NET库中。只要抛出任何错误并让使用代码处理即可: Try c
我们是否将所有引发的异常转换为COM异常?谢谢您的帮助。我的建议在您的.NET库中。只要抛出任何错误并让使用代码处理即可:
Try
code ...
Catch
Throw
End Try
如果COM捕捉到抛出,它应该解释它,对于.NET也是如此…COM不支持异常,只支持错误代码。客户端对COM的运行时支持通常会将这些错误代码转换为异常,.NET和VB6当然会。很难看出你的问题,你试过了吗?