Вы должны использовать AppDomain.CurrentDomain.BaseDirectory
.
Например, в приложении служб Windows:
System.Environment.CurrentDirectory
вернет C: \ Windows \ system32
Пока
AppDomain.CurrentDomain.BaseDirectory
вернет [расположение приложения.exe]
Еще один важный фактор, который следует отметить, это то, что AppDomain.CurrentDomain.BaseDirectory
является свойством только для чтения, тогда как Environment.CurrentDirectory
может быть чем-то другим, если необходимо:
// Change the directory to AppDomain.CurrentDomain.BaseDirectory
Environment.CurrentDirectory = AppDomain.CurrentDomain.BaseDirectory;