C#中如何获取其他进程的命令行参数 ( How to get other processes's command line argument )

时间:2021-02-15 20:54:00

 

private static IEnumerable<stringGetCommandLines(string processName)

        {

            List<stringresults = new List<string>();

            string wmiQuery = string.Format("select CommandLine from Win32_Process where Name='{0}'"processName);

            using (ManagementObjectSearcher searcher = new ManagementObjectSearcher(wmiQuery))

            {

                using (ManagementObjectCollection retObjectCollection = searcher.Get())

                {

                    foreach (ManagementObject retObject in retObjectCollection)

                    {

                        results.Add((string)retObject["CommandLine"]);

                    }

                }

            }

            return results;

        }

        static void Main(string[] args)

        {

            var result = GetCommandLines("msvsmon.exe");

            Console.Read();

        }

 任务管理器中实际的参数如下, 该程序或得到3个item的string。