Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C“如何检索”;命令行“;通过进程ID运行的进程的(exec.statement)_C# - Fatal编程技术网

C# C“如何检索”;命令行“;通过进程ID运行的进程的(exec.statement)

C# C“如何检索”;命令行“;通过进程ID运行的进程的(exec.statement),c#,C#,亲爱的社区: 我是编程新手,我正在开发一个小应用程序 我遇到以下问题的困难: 输入:正在运行的进程的ID 输出:该命令是在运行该进程时执行的(如图所示) 在我的应用程序中,我尝试使用:System.Diagnostics.Process和System.Management.ManagementObject,但找不到要查找的属性 如果有人向我建议这个问题的解决办法,我将不胜感激 多谢各位 您使用System.Management.ManagementObject的方法是正确的,您正在寻找命令行

亲爱的社区:

我是编程新手,我正在开发一个小应用程序

我遇到以下问题的困难:

  • 输入:正在运行的进程的ID
  • 输出:该命令是在运行该进程时执行的(如图所示)
在我的应用程序中,我尝试使用:System.Diagnostics.Process和System.Management.ManagementObject,但找不到要查找的属性

如果有人向我建议这个问题的解决办法,我将不胜感激

多谢各位


您使用
System.Management.ManagementObject
的方法是正确的,您正在寻找
命令行
属性。在您的例子中,需要向构造函数传递对象的WMI路径
Win32\u Process.Handle=6316
。例如:

string GetProcessCommandLine(int processId) =>
    System.Management.ManagementObject("Win32_Process.Handle=$processId").CommandLine;

或者,根据,您可以执行以下WMI查询:

SELECT CommandLine FROM Win32_Process WHERE ProcessID = <your process ID>

难以置信的我真的很感谢你!祝你一天愉快!非常感谢。
string GetCommandLine(int processId) =>
    System.Management.ManagementObjectSearcher(
        "select CommandLine from Win32_Process where ProcessID = $processId")
    .Get()[0]
    .CommandLine;