每日_VS Assembly resolve 程序自定义加载Dll文件

来源:互联网 发布:手机号码归属地软件 编辑:程序博客网 时间:2024/06/10 07:22

程序加载自己定义目录的DLL时,可以注册AssemblyResolve事件,来自己加载。


AppDomain.CurrentDomain.AssemblyResolve += this.OnDomainAssemblyResolve;


private Assembly OnCurrentDomainAssemblyResolve(object sender, ResolveEventArgs args)

{

return LoadAssembly(args.Name);

// System.Reflection.Assembly.LoadFile(fileFullPath);


}


根据一个目录,获取该目录下的所有dll(包含子目录)

string  foldPath ;

if(!Paht.IsPatRooted(foldPath))

{

folderPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, foldPaht);

}

string[] files = Directory.GetFiles(foldPath,"*.dll",SearchOption.AllDirectories);

foreach(var file in files)

{

string assemblyName = Path.GetFileName(file);

assemblyName = assemblyName.Sustring(0, assemblyName.Length -4);

string assemblyPath = Path.GetFullPath(file);

}



0 0
原创粉丝点击