В чем разница между AppDomain.CurrentDomain.BaseDirectory и Application.ExecutablePath на практике? - PullRequest
7 голосов
/ 06 октября 2008

Согласно MSDN, BaseDirectory - это место, где AppDomain будет искать загружаемые библиотеки DLL, а ExecutablePath будет указывать путь к исходному исполняемому файлу (включая имя файла). Я знаю, что у одного есть имя файла, а у другого - нет. Я знаю, что если я создам новый домен приложений, я могу указать ему другой путь. Но удаляя имя файла из ExecutablePath и предполагая, что я использую только один домен приложений, на практике, в чем разница между этими двумя путями? Будут ли они всегда одинаковыми (опять-таки, если предположить только один домен приложений)? Есть ли такой случай, когда они будут другими?

1 Ответ

3 голосов
/ 06 октября 2008

Подумайте о чем-то вроде ASP.NET, где ваш код размещен внутри другого процесса. BaseDirectory будет там, где живет ваш код, но ExecutablePath, вероятно, является некоторой DLL в system32.

...