log*_*out 9 winapi redirect console-application
我有一个用C编写的Win32应用程序,可以通过printf()将其控制台输出重定向到日志文件.
如果我有我的应用程序会很好.检测是否已启动或不启用重定向'>'.
有任何想法吗?
汤姆,谢谢你的意见.
我做了一些实验,发现这对我有用..
fpost_t pos ;
fgetpos (stdout, & pos) ;
Run Code Online (Sandbox Code Playgroud)
当应用程序的输出被重定向到文件时,fgetpos()将'pos'设置为零.它是新的开放的stderr为你有意义.编辑:实际上,如果文本已被重定向到日志/文件,则返回的值可能是正整数.所以在你的代码中,你会有类似"if(pos> = 0)bfRedirected = TRUE"的内容.
当应用程序的输出未被重定向时 - 它将转到控制台设备 - 而不是文件,因此fgetpos()会将'pos'设置为-1.
| 归档时间: |
|
| 查看次数: |
1844 次 |
| 最近记录: |