我主要通过谷歌阅读了很多东西(不在这里),没有找到答案,所以我在这里问它。AppDomain.AppendPrivatePath替代方案?
我想添加到“东西”(我认为对AppDomain
),以便我的代码可以解决在AT RUNTIME如何Assembly.CreateInstance
特定的DLL是在我的应用程序的编译文件夹之外。
我真的觉得AppDomain
是类使用和AppendPrivatePath
听起来像使用的方法,但它现在是“过时” ...... MSDN建议使用PrivateBinPath但据我了解我要创建一个新的AppDomain中,并与我的测试,我觉得Assembly.CreateInstance
不查找引用我的新的AppDomain
像一些代码:
AppDomainSetup domaininfo = new AppDomainSetup();
domaininfo.ApplicationBase = AppDomain.CurrentDomain.BaseDirectory;
domaininfo.PrivateBinPath = "D:\\.....\\bin\\Debug\\";
Evidence adevidence = AppDomain.CurrentDomain.Evidence;
AppDomain newDomain = AppDomain.CreateDomain("FrameworkDomain", adevidence, domaininfo);
作品,但后来,当我尝试CreateInstance
,我得到了TargetInvocation例外
我也试过:
Thread.GetDomain().SetupInformation.PrivateBinPath = "D:\\.....\\bin\\Debug\\";
听起来“特殊”,但对我好,但它不工作...
我真的觉得我必须给D:\\.....\\bin\\Debug\\
路径到目前的AppDomain,但它不再可能,因为AppendPrivatePath
已过时...
任何帮助吗?