使用我要运行的exe文件添加到我的解决方案文件夹中

时间:2013-01-02 10:28:31

标签: c#

我添加到我的应用程序文件夹中的exe文件,我想从我的应用程序运行但我认为我没有正确运行exe文件。 例如我的文件夹名称是文件夹,exe文件是run.exe所以我尝试@"\folder\run.exe"但是系统找不到指定的文件。 这样做的正确方法是什么?

public void run(string filePath, int deviceNumber)
{
    ProcessStartInfo processStartInfo = new ProcessStartInfo(@"\folder\run.exe");
    processStartInfo.Arguments = string.Format("{0} {2}{1}{2}", (deviceNumber).ToString(), filePath, "\"");
    processStartInfo.WindowStyle = ProcessWindowStyle.Hidden;
    processStartInfo.RedirectStandardOutput = true;
    processStartInfo.RedirectStandardError = true;
    processStartInfo.CreateNoWindow = true;
    processStartInfo.UseShellExecute = false;
    processStartInfo.ErrorDialog = false;

    using (Process process = Process.Start(processStartInfo))
    {
        process.WaitForExit();
    }
}

问题已解决:

the way to do it is ProcessStartInfo processStartInfo = new ProcessStartInfo(System.Windows.Forms.Application.StartupPath + myEXEpath);

2 个答案:

答案 0 :(得分:0)

如果使用Process Class运行它,请删除前导反斜杠

@"folder\run.exe"

目录“folder”必须与您的可执行文件位于同一目录中。

答案 1 :(得分:0)

当您从VS启动应用程序时,您可以以编程方式启动进程:

Process.Start(@"C:\somepath\run.exe");

您可以设置相对于应用路径的流程路径。 像那样:

Process.Start(AppDomain.CurrentDomain.BaseDirectory+"run.exe");

您可以从program.cs运行它并在应用程序启动的同时运行它,或者在表单加载或按钮单击等其他事件上启动它。