AppDomain.CurrentDomain.BaseDirectory和Application.ExecutablePath在实践中有什么区别?

Jon*_*ner 7 .net c# appdomain

根据MSDN,BaseDirectory是AppDomain将查找要加载的DLL的位置,而ExecutablePath将提供原始可执行文件的路径(包括文件名).我知道一个有文件名,另一个没有.我知道如果我创建一个新的AppDomain,我可以给它一个不同的路径.但是从ExecutablePath中删除文件名并假设我只使用一个AppDomain,实际上,这两个路径之间有什么区别?它们是否总是相同(再次假设只有一个AppDomain)?有不同的例子吗?

Ori*_*rds 3

想想像 ASP.NET 这样的东西,你的代码托管在另一个进程中。BaseDirectory 将是您的代码所在的位置,但 ExecutablePath 可能是 system32 中的某个 dll。