c - Win32 GUI应用程序: how to get stderr messages into messagebox

标签 c winapi

我正在尝试使用用以下语言编写的库中的过程 Win32 GUI 应用程序中的 C 语言。

该库的作者将错误消息记录到 stderr,如下所示。

fprintf(stderr, "Error in %s: %s\n", procname, msg);

如何将打印到 stderr 的消息放入消息框中?

谢谢。

最佳答案

您可以使用SetStdHandle选择另一个句柄作为进程的 stderr。创建一个管道,让一个线程等待有关该管道的信息,并将该管道的写入句柄设置为 stderr。如果您定义了足够大的缓冲区,您可能可以跳过线程,并在每次调用库后从管道中读取数据。

关于c - Win32 GUI应用程序: how to get stderr messages into messagebox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4109374/

相关文章:

c - pthread 程序的臭名昭著的行为

C语言中 "char"数组的malloc中的转换错误

在c中使用多维数组创建模式

windows - 谁改变时间?

c++ - 控制鼠标运动

python - 如何在C和Python之间交换时间

c - 使用 getchar 函数执行 while

c++ - VS 2010 中 win32 应用程序中的文件夹复制

c++ - 如何使用 C++ 检查任务调度程序中的任务触发器?

c# - 在 C# 中更改 Windows 的书写语言