1、启动无参数外部exe

首先需要添加引用

using System.Diagnostics; 

然后在打开事件中使用Process.Start()方法来打开外部程序;

Process.Start("C://Windows/System32/cmd.exe"); 

 

 

2、启动带参数的exe

首先我们先简单的创建一个带参数的exe

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;

namespace Start
{
    static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main(string[] args)
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            

            if (args.Length <= 0)
            {
                MessageBox.Show("请输入启动参数Start");
                Application.Exit();
            }
            if (args.Length == 1)
            {
                if (args[0] == "Start")
                {
                    Application.Run(new Form1(args));
                  
                    MessageBox.Show("成功启动,参数为" + args.ToString());
                }
                else
                {
                    MessageBox.Show("请输入Start");
                    Application.Exit();
                }
            }
        }
    }
}

 

Unity3D 代码

先定义一个方法StartProcess(string filname,string[] args),在需要启动的时候调用。

需要添加引用    using System.Diagnostics; 

private string s;
public
bool StartProcess(string filname, string[] args) { try { s = "Start"; Process myprocess = new Process(); ProcessStartInfo startInfo = new ProcessStartInfo(filename, s); myprocess.StartInfo = startInfo; myprocess.StartInfo.UseShellExecute = false; myprocess.Start(); return true; } catch (Exception ex) { UnityEngine.Debug.Log("出错原因:" + ex.Message); } return false; }

使用 

string filename = @"C://Start.exe";  

string[] args = new string[1];  
  
StartProcess(filename, args); 

 

StartProcess(filename, args);