我需要在 java 中读取一些错误消息,我尝试在 getErrorStream 中执行此操作,然后在 readLine 中执行此操作,但我得到了例外。
问问题
136 次
3 回答
2
TrueCrypt 不是您的 Java 程序,并且 Java 没有合理可行的方法来进入另一个程序的对话框以读取消息。
getErrorStream()
如果 TrueCrypt 将文本输出到它的标准错误,它会起作用,但由于它有一个对话框来向用户显示它没有理由这样做。
如果 TrueCrypt 失败,它可能会返回非 0 退出状态,您可以通过使用来捕获它Runtime.getRuntime().exec("TrueCrypt.exe")
,等待结果过程完成(使用Process.waitFor()
)然后检查您到达那里的退出状态。但是,您仍然需要有人(或某物)Ok为您按下按钮。
于 2009-12-07T21:05:46.507 回答
0
Truecrypt 的源代码是可用的,因此您可以将其修改为输出到 stdout/stderr。
于 2012-05-02T06:58:08.970 回答
0
你不能
该错误消息显示在不可读的操作系统的窗口管理器上。
您尝试从标准错误中读取失败,可能是因为该应用程序首先没有写入标准错误。
于 2009-12-07T21:05:44.230 回答