首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#有没有办法验证加载的程序集?

C#有没有办法验证加载的程序集?
EN

Stack Overflow用户
提问于 2020-05-13 19:13:58
回答 1查看 135关注 0票数 2

在.NET中有没有一种方法来验证加载的程序集,并在需要时防止加载它?

我试图使用AsseblyLoad事件,但根据this,它似乎包含了异常

代码语言:javascript
复制
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");
}

在真实的项目中,我想验证出版商由于许可证规则。在加载程序集之前,我缺少可以放置自定义验证代码的地方。

EN

回答 1

Stack Overflow用户

发布于 2020-05-13 19:27:12

您可以使用“仅限反射”加载来允许您通过反射访问程序集,以便在正确加载之前进行验证。

https://docs.microsoft.com/en-us/dotnet/api/system.reflection.assembly.reflectiononlyload?view=netframework-4.8

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61773135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档