4
您好我能夠使用Wmi執行遠程進程,並且能夠獲取進程的返回值和進程ID。有什麼辦法可以獲得由Wmi開始的流程輸出。例如。如果我啓動一個在控制檯中打印某些東西的exe文件,我將能夠使用此Api獲取這些值。任何幫助表示讚賞。使用Wmi win32_Process進行遠程進程執行 - 獲取進程標準輸出
您好我能夠使用Wmi執行遠程進程,並且能夠獲取進程的返回值和進程ID。有什麼辦法可以獲得由Wmi開始的流程輸出。例如。如果我啓動一個在控制檯中打印某些東西的exe文件,我將能夠使用此Api獲取這些值。任何幫助表示讚賞。使用Wmi win32_Process進行遠程進程執行 - 獲取進程標準輸出
您必須將輸出重定向到一個文件,然後通過網絡讀取文件。
使用CMD.EXE/S/C選項來執行此操作。
示例命令行運行Program.exe
:
CMD.EXE /S /C " "c:\path\to\program.exe" "argument1" "argument2" > "c:\path\to\stdout.txt" 2> "c:\path\to\stderr.txt" "
然後連接到服務器這樣\\servername\c$\path\to\stdout.txt
讀取標準輸出的結果。
注意:請注意圍繞命令運行的額外引號。這些對於確保命令行被正確解釋是必需的。
給其他任何試圖從WMI'Win32_process'獲取輸出的人的筆記 - 請注意上面命令中的額外引號!這些非常重要。閱讀'cmd.exe /?'以獲取更多關於報價處理的信息。 – aaronsnoswell 2015-05-11 23:45:12