我想在运行自己的项目时调用另一个exe。
string appRoot =Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
为此,我得到了这条路径: C:\ Users \ Jeff TungMbp \ Documents \ Visual Studio 2010 \ Projects \ menuSystemTutorial \ menuSystemTutorial \ menuSystemTutorial \ bin \ x86 \ Debug \ xxxxx.exe 的
这不是我想要进入的浴室。
我希望访问此路径: C:\ Users \ Jeff TungMbp \ Documents \ Visual Studio 2010 \ Projects \ menuSystemTutorial \ menuSystemTutorial \ menuSystemTutorial \ xxxxxx.exe < / p>
我不想做像 System.Process(@“C:\ xxxxxxx”)这样的硬编码。
我希望访问该路径的原因是因为我已将.exe文件导入到我的项目中,我希望访问的路径是.exe确切位置。
有什么方法可以解决这个问题吗?或者,在将其作为安装文件发布后,是否还有其他方法可以将.exe文件附加到我的项目中?
感谢。
答案 0 :(得分:0)
嗯,我认为没有一种方法可以在没有自定义情况的情况下直接指向menuSystemTutorial\xxxxxx.exe
路径。
由于GetExecutingAssembly()
方法获取包含当前执行代码的程序集,并且Visual Studio在bin\x86\Debug
文件夹下创建程序exe,在我看来没有这样做的方法。
但是,如果可以从原始路径获得所需的路径,则可以使用string.Replace()
方法;
string appRoot = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location).Replace(@"bin\x86\Debug\", "");