gpt4 book ai didi

c# - Assembly.LoadFrom - 使用证据重载来验证强名称签名

转载 作者:太空宇宙 更新时间:2023-11-03 20:46:10 28 4
gpt4 key购买 nike

是否可以使用带有 Evidence 参数的 Assembly.LoadFrom 重载来确保程序集是强命名的?我希望能够指定程序集名称、区域性、版本和公钥 token 。如果任何此信息不匹配,程序集将无法加载。

最佳答案

您可以在加载程序集后获取它的公钥 - 如果它加载成功并且有一个公钥,那么它就是强名称的:

Assembly assembly = Assembly.LoadFrom (...);
byte[] pk = assembly.GetName().GetPublicKey();

更好的是,在加载它之前检查程序集的公钥和版本信息:

AssemblyName an = AssemblyName.GetAssemblyName ("myfile.exe");
byte[] publicKey = an.GetPublicKey();
CultureInfo culture = an.CultureInfo;
Version version = an.Version;

如果 GetPublicKey() 返回非空值,然后程序集成功加载,则它具有有效的强名称。

关于c# - Assembly.LoadFrom - 使用证据重载来验证强名称签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/809934/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com