【发布时间】:2017-04-19 08:16:44
【问题描述】:
我正在尝试在可执行文件上方的文件夹中创建一个文件路径。例如,我希望变量TAGPATH 成为文件夹C:\User\ApplicationFolder\tag_rw\tag_rw.exe 中可执行文件的文件路径,而应用程序位于C:\User\ApplicationFolder\AppFiles 中。我希望应用程序是可移植的,这意味着无论文件夹名称如何,它都会检索应用程序可执行文件的文件路径,然后转到父文件夹并导航到 tag_rw\tag_rw.exe。
我基本上想要string TAGPATH = @"path_to_appfolder\\tag_rw\\tag_rw.exe"
这是我到目前为止已经厌倦的(使用第一个答案How to navigate a few folders up?):
string appPath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase);
string TAGPATH = System.IO.Path.GetFullPath(System.IO.Path.Combine(appPath, @"..\"));
我收到一个运行时错误ArgumentException,描述为URI formats are not supported.
有没有更简单/更好的方法来解决这个问题?
谢谢!
【问题讨论】:
-
如果我没有误解你的问题,你只是想得到父目录?
-
是的。应该只是说,而不是长段。获取初始父目录的父目录也很好。