在.NET中有没有一种方法来验证加载的程序集,并在需要时防止加载它?
我试图使用AsseblyLoad事件,但根据this,它似乎包含了异常
static void Main(string[] args)
{
AppDomain.CurrentDomain.AssemblyLoad += OnAssemblyLoaded;
var asm = Assembly.LoadFrom(@"path\to\assembly.dll");
Console.WriteLine($"loaded {asm.GetName().Name}");
Console.ReadKey();
}
private static void OnAssemblyLoaded(object sender, AssemblyLoadEventArgs args)
{
// DO CHECKs here
throw new Exception("invalid assebly");
}在真实的项目中,我想验证出版商由于许可证规则。在加载程序集之前,我缺少可以放置自定义验证代码的地方。
发布于 2020-05-13 19:27:12
您可以使用“仅限反射”加载来允许您通过反射访问程序集,以便在正确加载之前进行验证。
https://stackoverflow.com/questions/61773135
复制相似问题