Получить путь к файлу приложения в приложении Windows Forms - PullRequest
0 голосов
/ 03 ноября 2010

У меня есть простое приложение Windows Form, для которого мне нужно получить путь к файлу.Я помещаю файл конфигурации в тот же каталог, и мне нужно иметь возможность получить путь к этому файлу.

Я использовал Application.CommonAppDataPath, но это возвращает путь с 1.0.0.0 в конце.

и Applicaiton.StartupPath но это возвращает путь с \ bin \ debug в конце

Есть ли способ получить путь только к главному каталогу файлов без добавления чего-либо в конец?*

Ответы [ 3 ]

1 голос
/ 03 ноября 2010

Application.StartupPath возвращает путь с \bin\debug в конце, потому что - это , где выполняется ваш код, по крайней мере, на компьютере разработчика.

Если вы собираетесь развернуть это вне своей машины разработки, то Application.StartupPath даст вам то, что вы просите - путь к файлу для вашего приложения.И да, если вы развернули файл конфигурации в том же месте, ваш код его найдет.

Как заставить приложение работать на компьютере разработчика и обойти проблему bin\debug?Ну, грязный хак - это просто отрубить строку bin\debug с конца Application.StartupPath.

В этом случае, если вам нужно проверить, работает ли вы внутри отладчика, см. этот вопрос

0 голосов
/ 03 ноября 2010

Вы можете использовать

Application.ExecutablePath;, который дает полный путь, включая имя исполняемого файла и

Application.StartupPath; для вашей текущей директории пути к приложению без имени файла

0 голосов
/ 03 ноября 2010

Попробуйте с

Dim aPath As String 
Dim aName As String 

aName = _
  System.Reflection.Assembly.GetExecutingAssembly. _
  GetModules()(0).FullyQualifiedName    

aPath = System.IO.Path.GetDirectoryName(aName) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...