c#如何获取其他应用程序的启动参数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#如何获取其他应用程序的启动参数相关的知识,希望对你有一定的参考价值。
c#获取系统所有进程后,如何再取得他的启动参数?
使用任何方法都可以,要代码!!
Process.ProcessStartInfo.Arguments
这个取不到参数,我试过,我查到的是:设置这个参数只对Process.Start()有效
还有其他办法吗?
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
if (args.Length > 0)
Application.Run(new BgControlForm(args));
else
Application.Run(new Form1());
在此基础上,写一个带参数的form构造函数
BgControlForm
public BgControlForm(string[] args)
InitializeComponent();
MessageBox.Show(args[0]);
参考技术A 获取启动参数需要使用Process.ProcessStartInfo.Arguments。不过获取系统所有进程需要具备相关的权限,尤其是Vista下。
foreach( Process p in Process.GetProcesses())
Console.WriteLine(p.ProcessStartInfo.Arguments);
参考技术B 试试这个
using System;
using System.Management;
class Program
static void Main()
SelectQuery selectQuery = new SelectQuery("select * from Win32_Process");
object cmdLine = string.Empty;
using (ManagementObjectSearcher searcher = new ManagementObjectSearcher(selectQuery))
foreach (ManagementObject process in searcher.Get())
cmdLine = process.Properties["CommandLine"].Value;
Console.WriteLine(cmdLine == null ? "-----" : cmdLine);
Console.ReadKey();
本回答被提问者采纳 参考技术C 已经PM你了
以上是关于c#如何获取其他应用程序的启动参数的主要内容,如果未能解决你的问题,请参考以下文章