c#中一个进程启动另一个进程并传递参数

68 篇文章 5 订阅
7 篇文章 3 订阅

1.开启进程

using System.Diagnostics;
 
ProcessStartInfo process = new ProcessStartInfo();
process.FileName = "要开启的进程路径"; 
string arg1 =  "进程参数1";
string arg2 =  "进程参数2";
process.Arguments = string.Format("{0} {1}", arg1, arg2) ;  //多个参数用空格隔开
process.WindowStyle = ProcessWindowStyle.Normal;
Process.Start(process);
2.修改要开启进程的Main函数

/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)   //这里的 args 就为 {arg1,arg2} 了
{
   Application.EnableVisualStyles();
   Application.SetCompatibleTextRenderingDefault(false);
   Application.Run(new Form1(args));
}
 
 

C#的WinForms应用程序,如果需要在启动进程时向其传递参数,可以使用`System.Diagnostics.Process`类来实现。以下是传递参数到新进程的基本步骤: 1. 创建一个`ProcessStartInfo`实例,并指定要启动的程序名称。 2. 将需要传递的参添加到`ProcessStartInfo`的`Arguments`属性。 3. 创建`Process`实例,并将其`StartInfo`属性设置为先前创建的`ProcessStartInfo`实例。 4. 启动进程。 下面是一个示例代码,展示如何使用这些步骤: ```csharp using System; using System.Diagnostics; public class ProcessStarter { public static void StartProcessWithArguments(string programPath, string arguments) { ProcessStartInfo startInfo = new ProcessStartInfo(programPath); startInfo.Arguments = arguments; // 设置需要传递的参 Process process = new Process { StartInfo = startInfo }; process.Start(); // 启动进程 } } class Program { static void Main() { // 假设我们要启动记事本程序,并传递一些文本内容作为参 string programPath = "notepad.exe"; string arguments = "example.txt"; // 假设这是要打开的文件名 ProcessStarter.StartProcessWithArguments(programPath, arguments); } } ``` 在上述代码,我们首先创建了一个指向记事本程序的`ProcessStartInfo`对象,并将要打开的文件名(参)设置为其`Arguments`属性。然后我们创建了一个`Process`实例,用上面设置好的`ProcessStartInfo`来启动记事本程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值