GAC seems to contain two assemblies with identical name, version and public key token

无人久伴 提交于 2019-12-10 15:04:19

问题


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?


回答1:


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.

You can have assemblies associated with a specific processor architecture or platform independent. If you check the contents of your local GAC at C:\Windows\assembly the custom treatment of that folder by explorer will allow you to see the list of assemblies and the associated processor architecture.



来源:https://stackoverflow.com/questions/11985847/gac-seems-to-contain-two-assemblies-with-identical-name-version-and-public-key

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!