繁体   English   中英

广汽 32 位与 64 位

[英]GAC 32bit vs. 64bit

我一直在寻找一段时间试图更好地理解这一点,但没有找到任何直接的答案。

我有一个需要添加到 GAC 的组件。 我正在运行 Windows 7 64 位,并且为了解决问题(SSIS 2005 无法识别 DLL),我试图确保我在正确的 GAC 中注册了 DLL (.NET 4.0) .

所以这是我的问题:

  1. 对于 64 位和 32 位 GAC,Windows 7 中的物理位置在哪里? 我知道 C:\Windows\assembly,但不确定这是哪一个,另一个在哪里。

  2. 我使用哪个版本的 gacutil 将程序集添加到 64 位 GAC? 32位广汽? 我知道 C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC,我假设这是 32 位的,但不确定 64 位 gacutil 在哪里。

  3. 什么决定了应用程序在哪个 GAC 中查找程序集? 我假设这取决于应用程序是 64 位还是 32 位,但我想知道是否还有更多。

提前致谢。

更新:

在深入了解 ShaneBlake 的回答之后,我记得 .NET 2.0 和 .NET 4.0 GAC 位于不同的位置。 所以:

.NET 2.0 广汽:
c:\windows\assembly (32位和64位?)

.NET 4.0 广汽
c:\windows\Microsoft.NET\assembly\GAC_32 (仅限 32 位)
c:\windows\Microsoft.NET\assembly\GAC_64 (仅限 64 位)
c:\windows\Microsoft.NET\assembly\GAC_MSIL (32 位和 64 位?)

gacutil.exe 应根据编译方式将.dll 安装到正确的位置。 您应该可以在此处找到该文件: %ProgramFiles%\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\

.NET 4 有它自己的 Assembly 文件夹( c:\windows\Microsoft.NET\assembly ),其中有一个\GAC_32\GAC_64目录......这是安装后您可以找到文件的地方。

希望有帮助...

对于Windows 10

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM