GAC 似乎包含两个具有相同名称、版本和公钥令牌的程序集 [英] GAC seems to contain two assemblies with identical name, version and public key token
问题描述
我目前正在关注 此页面,该页面声称将 GAC 的内容列在一个典型的 Azure VM.请注意,以下程序集和许多其他程序集已列出两次.
I'm currently staring into this page that claims to list the contents of GAC on a typical Azure VM. Note that the following assemblies and many others are listed twice.
AuditPolicyGPManagedStubs.Interop, Version=6.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 TWICE
CustomMarshalers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a TWICE
CustomMarshalers, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a TWICE
ISymWrapper, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a TWICE
ISymWrapper, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a TWICE
Microsoft.GroupPolicy.AdmTmplEditor, Version=6.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 TWICE
对于这些程序集,似乎有两个不同的程序集具有相同的三重名称+版本+令牌".
For these assemblies there seems to be two distinct assemblies that have the same triple "name+version+token".
这怎么可能?这可能是网页中的错误还是可能没问题?依赖于这些程序集的软件将如何选择它想要的程序?
How is that possible? Is that likely a bug in the web page or is it likely okay? How will the software depending on those assemblies choose the one it wants?
推荐答案
这是由于处理器架构(最有可能是 x86 或 x64).该页面没有列出与每个程序集相关的处理器架构,但这也是 GAC 的一个因素.
Its due to the processor architecture (x86 or x64 most likely). The page does not list the processor architecture associated with each assembly, but that is also a factor for the GAC.
您可以拥有与特定处理器架构或平台无关的程序集.如果您在 C:Windowsassembly
处检查本地 GAC 的内容,则资源管理器对该文件夹的自定义处理将允许您查看程序集列表和相关的处理器架构.
You can have assemblies associated with a specific processor architecture or platform independent. If you check the contents of your local GAC at C:Windowsassembly
the custom treatment of that folder by explorer will allow you to see the list of assemblies and the associated processor architecture.
这篇关于GAC 似乎包含两个具有相同名称、版本和公钥令牌的程序集的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!