gpt4 book ai didi

c# - 程序集不在 GAC 中,但 gacutil 显示它在那里

转载 作者:太空狗 更新时间:2023-10-30 00:53:58 26 4
gpt4 key购买 nike

我注意到我的系统上有一些关于全局程序集缓存 (GAC) 的奇怪行为。我感兴趣的程序集是 log4net Version=1.2.11.0

gacutil/l "log4net" 的输出是:

C:\Windows\system32>gacutil /l "log4net" 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:
log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821, processorArchitecture=MSIL
log4net, Version=1.2.11.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL

Number of items = 2

但是通过 explorer shell 查看 GAC(重启前后)只显示一个版本:

enter image description here

我的应用程序无法解析程序集,但当我将它放入应用程序库(bin 文件夹)时工作正常,这使情况更加复杂。根据this article GAC 将在应用程序基础之前被探测 - 这将指向程序集不在 GAC 中。

GAC 中的 log4net Version=1.2.11.0 也是如此吗?如果是这样,为什么我的应用程序找不到它?

最佳答案

您正在查看 .NET 2.0 GAC,但是,log4net v1.2.11.0 是一个 .NET 4 程序集。 .NET 4 有自己的 GAC,位于 %winddir%\Microsoft.NET\Assembly。检查那里的 GAC_MSIL 目录,我敢打赌您会找到它。

关于c# - 程序集不在 GAC 中,但 gacutil 显示它在那里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14482236/

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