你如何使用process.start()来调用外部.exe

时间:2014-10-23 05:52:45

标签: c#

private void LaunchLAIFOMSApplication(string pApplicationName, string pCommandLineArgs)
        {
            try
            {
                this._laifomsProcesses.Add(pApplicationName);
                pApplicationName = pApplicationName + ".exe";
                ProcessStartInfo process = new ProcessStartInfo();
                process.WorkingDirectory =Application.StartupPath;
                process.FileName = pApplicationName;
                process.Arguments = pCommandLineArgs;
                process.UseShellExecute = false;
                process.CreateNoWindow = false;
                Process.Start(process);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message + "." + Environment.NewLine + "Please contact the Systems Administrator.", "LAIFOMS Application", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
        }

2 个答案:

答案 0 :(得分:0)

您应该为process.FileName提供应用程序的完整路径,而不仅仅是应用程序名称

答案 1 :(得分:0)

你可以做到

ProcessStartInfo startInfo = new ProcessStartInfo(@"C:\MyApplication.exe");
Process.Start(startInfo);

您需要提供应用程序的完整路径。 如果你想在运行新的exe之后关闭正在运行的exe,请执行此操作

Process.GetCurrentProcess().Kill();