当前位置: 首页 > 编程语言 > C#

C#设置不带app.config检测privatePath?分享

时间:2023-04-10 20:02:31 C#

C#设置探针privatePath没有app.config?我有一个C#应用程序,为了组织它的文件,我在一个名为“Data”的文件夹中有一些DLL。我希望EXE检查此文件夹中的DLL,就像检查当前目录一样。如果我使用以下信息创建App.Config:没问题。我不想要App.Config。有没有一种方法可以不使用app.config来设置探测路径?您可以为您创建的新AppDomain执行此操作,我认为在当前/默认AppDomain的托管代码中没有办法执行此操作。编辑:使用私有路径创建AppDomain:使用AppDomain.CreateDomain和AppDomainSetup.PrivateBinPath您还可以像这样处理AppDomainAssemblyResolve事件:和:privatestaticSystem.Reflection.AssemblyCurrentDomain_AssemblyResolvesE,objargs){varprobingPath=pathToYourDataFolderHere;varassyName=newAssemblyName(args.Name);varnewPath=Path.Combine(probingPath,assyName.Name);如果(!newPath.EndsWith(".dll")){newPath=newPath+".dll";}if(File.Exists(newPath)){varassy=Assembly.LoadFile(newPath);返回总成;}返回空值;}setup.ApplicationBase=dataDir;C#学习教程:C#设置不带app.config检测privatePath?如果分享的内容对你有用,需要了解更多C#学习教程,希望你多多关注——[STAThread]staticvoidMain(){#region添加Dll文件夹System.Reflection.Assemblyassembly=System.Reflection.Assembly.GetAssembly(typeof(MainForm));字符串dataDir=System.IO.Path.Combine(System.IO.Path.GetDirectoryName(newUri(assembly.GetName().CodeBase).LocalPath),"Data");AppDomainSetupsetup=newAppDomainSetup();setup.ApplicationBase=dataDir;#endregion添加Dll文件夹Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);应用程序运行(新主窗体());}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处: