首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用md5哈希的Assembly.LoadFrom不起作用

使用md5哈希的Assembly.LoadFrom不起作用
EN

Stack Overflow用户
提问于 2012-05-11 09:48:12
回答 1查看 288关注 0票数 0

我的Assembly.LoadFrom(path,hashValue,hashAlgorithm)不工作,失败并出现“定位的程序集与程序集引用不匹配”异常。

这是在powershell 2中。

我已经通过首先使用Load(bytes)加载程序集来确定散列值,这很好用。使用该结果,我访问证据中的MD5散列值,如下所示:

代码语言:javascript
复制
$a= [System.Reflection.Assembly]::Load($bytes)  
$h=$a.Evidence|? {$_ -is [System.Security.Policy.Hash]}  
$md5= $h.MD5  

我将散列值带到另一个powershell会话中,因此我有了一个干净的AppDomain,并尝试这样做:

代码语言:javascript
复制
$md5=[byte[]] (values that I determined)  
[System.Reflection.Assembly]::LoadFrom("pathToMyAssembly", $md5, "MD5")  

这就是失败的地方。有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2012-05-17 14:27:22

您调用的LoadFrom方法仅在.NET 4及更高版本中可用。看到Powershell仍然在.NET 3.5上运行,称这不会起作用。

也许你可以将null传递给第二个参数。例如:

代码语言:javascript
复制
[System.Reflection.Assembly]::LoadFrom("pathToMyAssembly", null, $md5, "MD5")  

According to MSDN, the above method is now obsolete,但对于3.5版本,您别无选择:)

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

https://stackoverflow.com/questions/10544381

复制
相关文章

相似问题

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