0

在此处输入图像描述

在这方面,我的疑问是,

  • 如何在 C# 中处理 LibreOffice 异常。
  • 如果无法处理,如何在执行控制台时以编程方式关闭此异常或抑制此异常弹出窗口
    • 或者任何更好的解决方案,我的转换过程不应该因为 Libre Office 引起的未处理异常而停止。
4

2 回答 2

1

从图像中,看起来异常是从https://github.com/caolanm/unoconv/blob/master/unoconv的代码中的storeToUrl()引发的。

unoconv是一个命令行工具,而不是一个库,所以似乎不可能用 try/catch 块来捕获错误。也许您可以捕获进程的错误流并对其进行解析以查看是否发生异常。

与其使用,不如使用 UNO API 直接在 C# 中调用,使用com.sun.star.io.IOExceptionunoconv的 try/catch可能会更好。storeToUrl()

使用 LibreOffice 进行许多自动转换时,通常需要在进程卡住时终止进程:https ://github.com/dagwieers/unoconv/issues/352 。

于 2017-03-17T16:29:13.210 回答
0

首先,谢谢大家的热心帮助.. :)。最后我解决了。

在批量文件转换时,我的 c# 进程被中断,因为 LibreOffice 进程(soffice)中发生了一些异常。所以我开始杀死我的 c# 进程及其子进程,也杀死了 soffice。因此,对于下一个文件,正在创建新的 soffice,因为我执行了 unoconv 命令。

但是,我仍然收到异常弹出窗口,但是 c# 进程继续继续.. 这段代码帮助了我

于 2017-03-28T10:02:54.273 回答