在程序文件夹中的c#中运行exe文件

时间:2016-05-25 12:59:03

标签: c# .net exe process.start

我需要从我的程序目录启动一个EXE文件而不提供完整的路径。

enter image description here

private void programul1ToolStripMenuItem_Click(object sender, EventArgs e)
{
    System.Diagnostics.Process.Start(@"C:\Users\radum\Desktop\mapa 3 prog\Prog3\Program 1.exe");
}

如何才能从... \ Prog3 \ Program 1.exe?

中提供路径

3 个答案:

答案 0 :(得分:3)

只需使用relative path

System.Diagnostics.Process.Start(@"Program 1.exe");

如果Program 1.exe 与运行该代码的程序在同一目录中并且current working directory未使用快捷方式修改,则上述代码将起作用。

如果没有,那么你必须找到你的程序 relative 的路径(应该在bin/debug/中的那个

答案 1 :(得分:0)

Common.AssemblyDirectory返回包含正在运行的程序集的文件夹。

所以使用:     Path.Combine(Common.AssemblyDirectory,@“Prog3 \ Program 1.exe”);

编辑:您在我的回答后编辑了问题。正如poke所说,你把文件放在错误的文件夹中。

答案 2 :(得分:0)

通常,解决方案目录是默认输出目录的3级,因此您应该使用

df$simulation <- rnorm(nrow(df), df$mean, (df$upper - df$lower) / 2 / 1.96)
df
#  lower upper mean simulation
#1  -1.0     0 -0.5 -0.6281103
#2   0.5     2  1.2  1.2503308
#3   0.0     4  2.5  2.4194724

但你不应该这样做。您必须将System.Diagnostics.Process.Start(@"..\..\..\Program 1.exe"); 复制到输出目录并使用

Program 1.exe

代替。您可以使用post build commands执行此操作。 将其用作后期构建命令

System.Diagnostics.Process.Start(@"Program 1.exe");