簡體   English   中英

從C ++獲取CMD行程序的輸出(特別是netstat)

[英]Get output of CMD line program from C++ (specifically netstat)

我希望能夠運行“ 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);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM