1
这里就是我想实现的东西:打开CMD.EXE,然后运行我目前的控制台应用程序
- 比方说,我准备abc.exe(控制台应用程序)。
- 我想调用cmd.exe,然后通过cmd启动abc.exe。我不会在我的项目文件夹中保留cmd.exe。我将从用户机器的system32文件夹中使用它。
可能吗?
这里就是我想实现的东西:打开CMD.EXE,然后运行我目前的控制台应用程序
可能吗?
正如评论中所述,您可以使用Process.Start(pathToExe)
来启动一个新过程。
你可以在一个新的CMD与cmd /C start "Title" "C:\path\to\app.exe"
启动程序:
string cmdPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "cmd.exe");
string exePath = System.Reflection.Assembly.GetEntryAssembly().Location;
ProcessStartInfo newCmd = new ProcessStartInfo(cmdPath);
newCmd.Arguments = String.Format(@"/C start ""{0}"" ""{1}""", "WindowTitle", exePath);
Process.Start(newCmd);
你可能需要某种形式的周围条件,以不fork炸弹自己
谢谢!是的,我会照顾它的。 – Praveen
所以,你要'abc.exe '启动'cmd.exe',然后让'cmd.exe'启动'abc.exe'的另一个副本? –
请检查[this](http://stackoverflow.com/a/16978753/896276)回答有关详细信息 – codeRecap
您可以使用'Process.Start(“cmd.exe”)' –