在ShellExecute函数中获取stderr和stdout到字符串

时间:2016-08-21 17:29:06

标签: c windows

我想让stderrstdout从控制台中删除命令到x字符串,以便在某些stderrstdout个案例中执行某些代码

case WM_CREATE:
            ShellExecute(0,
                         "open",
                         "cmd.exe",
                         "/C ipconfig > x",
                         0, SW_HIDE);
break;

将结果输出到x文件我也认为它不记录stderr,因为它在删除adb命令时将x文件留空

1 个答案:

答案 0 :(得分:0)

@CodyGray,谢谢你试图提供帮助,我发现解决方案只是添加" 2>& 1"这将抓住像这样的stderr和stdout

ShellExecute(0,
                         "open",
                         "cmd.exe",
                         "/C ipconfig > buffer.txt 2>&1",
                         0, SW_HIDE);

解决方案比您提到的更简单,只需要找出如何将其重定向到字符串