从USB执行文件

时间:2015-10-19 20:47:53

标签: c# visual-studio

我正在制作一个假设从USB密钥运行的程序。 但是我在运行文件夹中的文件时遇到问题。

Usb文件夹/文件结构如下:

  • / data
  • /install/Install2.exe
  • APP.EXE
  • 的Install.exe

我可以执行install.exe文件但运行此代码

private void Icon_Click(object sender, EventArgs e)
{
    System.Diagnostics.Process.Start("install.exe");
}

但是如何让它在子文件夹中启动文件?

2 个答案:

答案 0 :(得分:2)

您可以暂时导航到目录,运行可执行文件,然后返回到原来的位置:

var dir = Environment.CurrentDirectory;
Environment.CurrentDirectory = Path.Combine(dir, "data", "install");
System.Diagnostics.Process.Start("install2.exe");
Environment.CurrentDirectory = dir;

答案 1 :(得分:0)

我的初步答案误以为您希望在插入USB驱动器时自动运行文件。

我的理解是,您的问题是如何使用您提供的代码在子文件夹中运行文件。这里有几个选项:

  1. 使用相对路径“。\ data install \ install2.exe”,如果您的程序从自己的路径启动/执行,这将有效。

  2. 读取当前的可删除路径并使用它构建该子文件夹的新路径(check this question for an example