如何将命令行从WPF应用程序传递到另一个应用程序

本文关键字:应用程序 另一个 WPF 命令行 | 更新日期: 2023-09-27 17:52:40

目前,我正在使用以下代码从另一个WPF应用程序(4.0应用程序)运行一个WPF exe(在3.5框架中):

var processInfo = new ProcessStartInfo("WPFAPP1.exe", "param");
Process.Start(processInfo);

以上原因是:
我正在使用一些只支持3.5框架的第三方,而我现有的应用程序是4.0。我不能改变我当前的应用程序目标类型,因为它有大约200个项目,我需要改变。

现在的问题是我想在WPFAPP1.exe中获得命令行参数(即"param")。为此,我在WPFAPP1应用程序(我从Master应用程序调用的.exe应用程序)中使用了以下代码,

 public static String[] mArgs;
  void Application_Startup(object sender, StartupEventArgs e)
  {
        if (e.Args.Length > 0)
        {
            mArgs = e.Args;
        }
  }

在mainwindow . example .cs:

        public MainWindow()
        {
            InitializeComponent();
            String[] args = App.mArgs;
            txtTest.Text = args[0];
        }

我尝试了上面的代码,但没有得到相应的值(我从主应用程序"参数"传递)。我也没有得到任何异常或错误。

如何将命令行从WPF应用程序传递到另一个应用程序

查看System.Diagnostics.Process.GetCurrentProcess(). startinfo。它是一个ProcessStartInfo实例,它有一个Arguments属性,包含当前进程的所有参数。

您可以创建一个新的ProcessStartInfo实例并将参数传递给任何子进程。