我希望能够运行“netstat -n”并以某种方式获取输出,这样我就可以将其写入另一个文件。
如何在 Windows CE 上的 C++ 中执行此操作
谢谢
克里斯
我希望能够运行“netstat -n”并以某种方式获取输出,这样我就可以将其写入另一个文件。
如何在 Windows CE 上的 C++ 中执行此操作
谢谢
克里斯
您必须调用 CreateProcess 并覆盖进程的输出句柄:
STARTUPINFO aInfo;
...
aINfo.hStdOutput = myHandle;
CreateProcess(..., &aInfo, ...);
http://msdn.microsoft.com/en-us/library/ms682499%28VS.85%29.aspx
但不太确定它会在 CE 下工作
我通过从 cmd 提示符调用 netstat 解决了这个问题,将输出传输到一个文件,然后从那里使用它。我相信 Kerido 的回答是正确的,但这就是我让它发挥作用的方式。
此代码然后启动 cmd.exe 并告诉它运行 netstat -n。请注意,/c 是必需的,否则 cmd.exe 将不会启动代码
int retVal = CreateProcessW(L"cmd.exe", L"/c netstat -n > \"/netstatoutput.txt\"", NULL, NULL, NULL, CREATE_NEW_CONSOLE, NULL, NULL, NULL, NULL);