gpt4 book ai didi

gac - 为什么 GACUtil 声称将程序集安装到 GAC 但实际上失败了?

转载 作者:行者123 更新时间:2023-12-04 06:17:52 27 4
gpt4 key购买 nike

我有一个组件: SomeAssembly.dll

我的路径上有 GACUtil 的文件夹: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 工具

我切换到 SomeAssembly.dll 所在的文件夹,执行

GACUtil /i SomeAssembly.dll

回应是:
Microsoft (R) .NET Global Assembly Cache Utility.  Version 4.0.30319.1
Copyright (c) Microsoft Corporation. All rights reserved.

Assembly successfully added to the cache

我查了 C:\Windows\Assembly ,但我的程序集似乎不在那里。

我返回到我的命令窗口(我注意到它具有 管理员 权限)并键入:
GACUtil /l SomeAssembly.dll

并且响应确认...
Microsoft (R) .NET Global Assembly Cache Utility.  Version 4.0.30319.1
Copyright (c) Microsoft Corporation. All rights reserved.

The Global Assembly Cache contains the following assemblies:

Number of items = 0

所以看起来 SomeAssembly.dll 不在 GAC 中

为什么?

最佳答案

离开 .dll使用时的扩展 gacutil /l它应该正确报告您的程序集。

另外,我怀疑可能存在某种 32/64 位混合。当您查看时 C:\Windows\Assembly通过 Windows 资源管理器,您可能只会看到 32 位 GAC。

[ 更新:看起来 .NET 4 将 GAC 程序集存储在 C:\Windows\Microsoft.NET\assembly 中所以你只能在 C:\Windows\assembly 中看到 CLR v2.0 程序集.]

要查看 (v2 CLR) GAC 目录的真实内容,请在没有 Explorer shell 扩展的情况下查看它 - 一个快速的方法是使用 subst 将驱动器映射到目录。并通过它查看它,例如:

C:\>subst G: c:\Windows\assembly
C:\>start G:

关于gac - 为什么 GACUtil 声称将程序集安装到 GAC 但实际上失败了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14218158/

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