问题标签 [gac]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
1426 浏览

.net - .NET 2.0 程序 (VS 2005) 在 Visual Studio 中运行,但不能从 Windows 资源管理器中运行

有人见过这个吗?

有几秒钟的延迟,然后其中一个对话框显示“雅达雅达遇到问题,需要关闭。对于给您带来的不便,我们深表歉意。” (这很奇怪,因为我的程序有一个异常处理系统,如果在我的代码中抛出异常,它会提供有用的错误消息,但显然没有达到这一点:这个对话框与你尝试运行时看到的相同未安装 .NET 的机器上的 .NET 程序。)同样的二进制文件可以在其他 Windows 系统上运行。

我尝试重新安装 .NET 2.0。我试过删除它(不允许我)。我尝试“更改”它(显然没有任何变化)。我尝试重新发布我的项目(ClickOnce),它仍然可以在其他机器上运行,但不能在我的开发机器上运行,除了在 Visual Studio 中。我尝试删除已安装的 ClickOnce 项目并重新安装,但它仍然无法启动该程序。

我发现的最接近的是这个(阅读他的澄清),但这些解决方案都没有奏效。

我正在考虑重命名程序并重新发布和重新安装,看看它是否与神秘的 GAC 或邪恶的注册表有关。

0 投票
3 回答
2155 浏览

.net - 将 dll 注册到 GAC 还是从 ASP.NET 的 bin 文件夹中引用它们会更好吗

如果答案是“视情况而定”,您能否简要解释一下原因?

0 投票
2 回答
2210 浏览

asp.net-mvc - MVC 错误问题

“/”应用程序中的服务器错误。


解析器错误描述:解析服务此请求所需的资源时发生错误。请查看以下特定的解析错误详细信息并适当地修改您的源文件。

解析器错误消息:'System.Web.Mvc.ViewMasterPage' 类型不明确:它可能来自程序集 'C:\Windows\assembly\GAC_MSIL\System.Web.Mvc\1.0.0.0__31bf3856ad364e35\System.Web.Mvc。 dll' 或来自程序集 'C:\Projects\Samples\JQuery\bin\JQuery.DLL'。请在类型名称中明确指定程序集。

源错误:

第 1 行:<%@ Master Language="C#" 第 2 行:Inherits="System.Web.Mvc.ViewMasterPage" 第 3 行:EnableTheming="true" %>

源文件:/Views/Shared/Site.Master 行:1


版本信息:Microsoft .NET Framework 版本:2.0.50727.4918;ASP.NET 版本:2.0.50727.4918

也许我只是对为什么这会突然出现在我身上感到困惑。我已经在这个测试应用程序上工作了 2 天了,然后按 F5 和 wham...</p>

-kb

0 投票
3 回答
2103 浏览

dll - 使用全局程序集缓存提高速度

如果我有 1000 个 asp.net 网站,每个网站的 /bin 文件夹中有 30 个 DLL。

因此有 30,000 个 DLL。

如果我将一组 DLL 注册到全局程序集缓存中并且每个站点都使用 GAC 中的 DLL,网站/Web 服务器/机器会运行得更快吗?

例如,网站会共同使用更少的内存吗?

0 投票
6 回答
3222 浏览

.net - 将程序集部署到 GAC 的“官方”方式?

我只是想知道 - 如果我需要将程序集部署到 GAC 中,那么“官方”的做法是什么?

目前我们要么手动拖放到 c:\windows\assembly 文件夹中,要么使用 gacutil.exe。第一种方法显然不是好方法(毕竟它是手动过程),并且 gacutil 是 SDK 的一部分,默认情况下在生产服务器上不可用。

是否有任何 Microsoft 部署指南?

0 投票
1 回答
1804 浏览

64-bit - 在 64 位机器上运行时,32 位应用程序找不到 mshtml 程序集

我正在尝试在 64 位机器上运行 32 位应用程序(构建为 x86)。我将它构建为 x86,因为它使用 32 位 com 对象。在我这样做之前,该应用程序无法加载 com. 现在它加载了 com,但抱怨它找不到 microsoft.mshtml 程序集。此程序集由 (.net) 依赖项之一使用。

错误信息是:

我可以看到这个程序集在 CLSID 和 WOW3264NodeCLSID 下都注册了。但是,在 WINdows\Assembly 目录中找不到它。

我试图从构建应用程序的计算机上复制 dll 并将其放入应用程序目录中。然后,当我尝试运行该应用程序时,我收到了关于强命名的安全错误。我用谷歌搜索了错误,发现程序集应该添加到 GAC 中。我试图通过将 dll 拖入来做到这一点\windows\assembly,但这也不起作用。它给了我一条关于私钥\公钥的错误消息。

我启用了绑定日志记录,这就是我得到的:

=== 预绑定状态信息 ===

我应该怎么办?任何帮助将不胜感激。

0 投票
4 回答
55526 浏览

asp.net - bin 和 gac 中的 dll,使用哪个?

我们有一个 Web 应用程序,它部署到许多网站上,只有前端更改,共享的后端部分在 GAC 中有它的 DLL,所以我们只需要更新一个 dll,所有网站都会得到更新。

有没有办法用 /bin 文件夹中的 DLL 覆盖 GAC,以便在新功能发布之前测试它们?

0 投票
8 回答
16038 浏览

asp.net - 强制 ASP.NET 应用程序从 bin 而不是 GAC 加载程序集

有什么方法可以强制我的 asp.net 应用程序从本地 bin 目录加载程序集,因为 gac 中有另一个具有相同名称的旧版本的程序集?

我无法删除 gac 版本,因为其他应用程序正在使用它,并且在将较新版本添加到 gac 时我遇到了一些困难。

0 投票
4 回答
1833 浏览

visual-studio-2008 - VS2008 优先 GAC 引用解决方案文件夹中的程序集

我在我的解决方案中使用了一些 3rd 方库,并将它们保存在一个名为 3rdParty 的单独的源代码控制文件夹中。我已经从 VS2008 IDE 添加了对这个文件夹中 DLL 的引用。但是,我发现在保存、关闭和打开解决方案后,引用已更改为指向 GAC 中的程序集。

使用 3rdParty 文件夹的原因是我可以轻松地从任何机器获取最新版本并构建我的项目,而无需在 GAC 文件夹中安装任何东西。如何让 VS2008 不影响我的参考?

编辑:看到 Benjol 的回答后,我一直想知道是否可以使用程序集清单来解决这个问题。这会帮助解决我的问题吗?

0 投票
2 回答
1188 浏览

.net - 将共享程序集安装到 GAC 中以进行开发和构建

我在这里阅读了一些关于 GAC 的帖子,以及为什么永远不应该通过将共享程序集安装到 GAC 中来部署应用程序。我认为这是有道理的,因为它应该使更新客户端计算机上的应用程序更容易。

但是,我可以看到 GAC 在两个方面很有用,即在开发期间和在构建服务器上。

例如,如果您使用 Microsoft 应用程序块,您可以将它们安装到 GAC 中并在那里引用它们。这是有道理的,因为这样做比拥有和绝对引用路径更容易,并且每个开发人员机器上的路径可能不同。这也比拥有一个包含所有共享组件的共享网络驱动器要好 - 已经做到了。

然后,您可能会对构建服务器执行相同的操作。但是,我看到的唯一问题是您有一个使用 2.0 版应用程序块的应用程序。稍后您将其升级为使用 3.1 版。在某些时候,您可能需要重新创建该应用程序的早期版本来测试客户发现的错误,但是当您重新创建构建时,它将选择应用程序块的 3.1 版本,而不是最初构建时所针对的 2.0 版本。这是真的,还是旧项目文件仍然会引用旧版本的 dll,只要它在 GAC 中?

你对这个特定点有什么想法/意见?

我希望能够将所有版本的共享组件(我们下载或构建)作为 MSI 分发给所有开发人员,这些 MSI 安装到 GAC 中,并作为应用程序安装程序的一部分部署到客户机器上。这是最好的方法吗?