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);