从 C++ 获取 CMD 行程序的输出(特别是netstat)
我希望能够运行“netstat -n”并以某种方式获取输出,以便我可以将其写入另一个文件。
我如何在 Windows CE 上用 C++ 执行此操作
谢谢
Chris
I want to be able to run "netstat -n" and grab the output somehow so I can then write it out to another file.
How can I do this in C++ on Windows CE
Thankyou
Chris
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您必须调用 CreateProcess 并覆盖进程的输出句柄:
You must call CreateProcess and override the process's output handle:
http://msdn.microsoft.com/en- us/library/ms682499%28VS.85%29.aspx
但不太确定它能在 CE 下工作
http://msdn.microsoft.com/en-us/library/ms682499%28VS.85%29.aspx
But not pretty sure it'll work under CE
我通过从 cmd 提示符调用 netstat,将输出传输到文件,然后从那里使用它来解决这个问题。我相信 Kerido 的答案是正确的,但这就是我让它发挥作用的方式。
然后,此代码启动 cmd.exe 并告诉它运行 netstat -n。请注意,/c 是必需的,否则 cmd.exe 将不会启动代码
I solved this by essentially calling netstat from the cmd prompt, piping the output to a file, and then using it from there. I believe Kerido's answer to be right but this is how I got it working.
This code then launches cmd.exe and telling it to run netstat -n. Note that the /c is required else cmd.exe will not launch the code