Эта строка подходит для WinForm Framework3.5, но не для WPF Framework3.5.
Path.GetDirectoryName(Application.ExecutablePath);
Как я могу получить путь к exe в приложении WPF?
Эта строка подходит для WinForm Framework3.5, но не для WPF Framework3.5.
Path.GetDirectoryName(Application.ExecutablePath);
Как я могу получить путь к exe в приложении WPF?
Есть несколько способов получить путь к exe. Попробуйте следующее:
Assembly.Location
в некоторых случаях может вернуть null
, лучше использовать AssemblyName.CodeBase
, пример ниже от Неда Стоянова
- person ili; 10.04.2014
using
- person RE6; 21.04.2014
Попробуй это:
System.IO.Path.GetDirectoryName(
System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase );
System.IO.Path.GetDirectoryName( new Uri( System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase).LocalPath );
- это правильно, CodeBase
возвращает URL, а Path.GetDirectoryName(...)
не работает с URL
- person ili; 10.04.2014
Вы можете распаковать Uri следующим образом:
string codeBase = Assembly.GetExecutingAssembly().CodeBase;
UriBuilder uri = new UriBuilder(codeBase);
string path = Uri.UnescapeDataString(uri.Path);