对于 Windows:请参阅 COM 相关文档,以获取错误处理的详细说明。
- C# (仅限 Windows) :为 COM 接口自动生成的包装器会检测错误并将其转换为标准异常。请使用以下语句将一系列 ABBYY FineReader Engine 方法括起来:
- 使用 Native COM support 的 C++ (Windows) 。Native COM support 技术将 interface 函数的 HRESULT 代码转换为特殊 type 的异常 (_com_error) ,并自动使用来自 IErrorInfo 的信息。因此,一系列 FineReader Engine method 可以用以下语句包裹:
- 原生 C++ / C++。FineReader Engine 的 interface 方法和属性不会抛出异常,而是返回 HRESULT。处理这些返回码最重要的手段是 SUCCEEDED 和 FAILED 宏。它们用于测试 HRESULT 值,并据此判断操作结果——成功或失败。要获取指向 IErrorInfo 对象 interface 的指针,请使用以下 API 函数:
- Windows 平台使用 GetErrorInfo
- Linux 和 macOS 平台使用 GetFREngineErrorInfo:
- Java (仅限 Linux 和 Windows) 。有关 Java 中错误处理的建议,请参阅在 Java 中使用 ABBYY FineReader Engine。
- Visual Basic (仅限 Windows) 。Visual Basic 用户可通过 Err 对象的 Number 属性访问 HRESULT 代码。Err 对象的其他属性将使用来自 IErrorInfo 的信息进行初始化。此处的错误处理通过 On Error 语句实现。如果代码中未使用 On Error Resume Next 语句,则任何运行时错误都可能导致显示来自 IErrorInfo 的错误消息并停止代码执行。
