0

默认情况下,LibTIFF 将所有错误输出写入 stderr。这似乎是硬编码的。有没有办法将它重定向到字符串消息处理程序或文件?理想情况下不修改 LibTIFF 本身,但如果更改不是太大,我可以修改。

澄清 #1

我需要以编程方式执行此操作,因为我在另一个库中使用 LibTIFF,并且不允许该库向 stderr 写入任何内容(否则它会弄乱使用我的库的应用程序)。我的库将所有错误记录到一个文件中 - 我也希望将 LibTIFF 错误重定向到该文件。

我无法控制使用我的库的应用程序。

澄清 #2

我的库是 C++ 并在 Windows 上运行。

如果需要修改 LibTIFF,欢迎提出建议和意见。

4

3 回答 3

1

您可能应该尝试TIFFSetErrorHandler在 libtiff 中使用函数。

使用此功能,用户可以更改库处理错误的方式。无需修改 libtiff 的代码即可将错误输出重定向到 stderr 以外的内容。

http://www.unix.com/man-page/OpenSolaris/3tiff/TIFFSetErrorHandler/

于 2011-07-12T05:26:01.830 回答
0

将以下内容添加到 libtiff 命令的末尾:

 2>filename.txt

filename.txt要将输出保存到的文件的名称在哪里。然而,这种语法可能是平台相关的;至少,这种语法应该适用于 Linux 和 Windows。

于 2011-07-11T21:41:27.677 回答
0

是的,添加 2> 输出文件

资料来源: http ://www.lamfa.u-picardie.fr/asch/f/MeCS/courseware/users/help/general/unix/redirection.html

于 2011-07-11T21:42:33.760 回答