c# - 使用 Wmi win32_Process 的远程进程执行 - 获取进程的标准输出

标签 c# wmi

您好,我能够使用 Wmi 执行远程进程,并且能够获得进程的返回值和进程 ID。有什么方法可以获取由 Wmi 启动的进程的输出。例如。如果我启动一个在控制台中打印某些内容的 exe,我将能够使用此 Api 获取这些值。任何帮助表示赞赏。

最佳答案

您必须将输出重定向到一个文件,然后通过网络读取该文件。

使用 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 以读取 stdout 结果。

注意:请特别注意要运行的命令周围的额外引号。这些是确保正确解释命令行所必需的。

关于c# - 使用 Wmi win32_Process 的远程进程执行 - 获取进程的标准输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10315489/

相关文章:

powershell - 使用Register-WmiEvent通知脚本何时开始执行

c# - Datagridview 完全加载时显示 Windows 窗体

c# - 如何让 XAML 中的图像显示为它们的实际大小?

c# - 单个表单中的单独代码 [C#]

c# - .NET - 从代码设置电源选项

c# - 是否有必要处置每个 ManagementObject?

c# - 除了字符串,我还可以将什么传递给消息队列?

c# - 我如何在 linq 中对非字符串字段使用过滤器?

python - 如何使用 python 收集 GDI 和用户对象的性能指标

c# - 如何检测斑马打印机是否安装