我正在创建一个使用聚合(内置)COM对象的类库。此COM对象的方法和属性可能会抛出COMException,其中ErrorCode属性为HRESULT,表示COM对象的内部逻辑中存在错误。异常处理应用程序块 - 如何根据原始消息的某些属性用我自己的原始消息替换原始消息?
例如,HRESULT(和因此COMException.ErrorCode)= -1001意味着特定方法的输入参数格式不正确。
我想利用异常处理应用程序块在我的图书馆,并在接下来的方式我的自定义异常更换有意义的错误码COMExceptions:
COMException.ErrorCode = -1001 ---> MyLibraryException.ErrorReason = DeviceError .BadFormatOfInputParam & & MyLibraryException.InnerException = originalCOMException,其中DeviceError是枚举&其中是明确DeviceError memeber从COM对象的每个特定HRESULT。
如何使用异常处理应用程序块实现此目的?
感谢