问题标签 [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 投票
1 回答
579 浏览

.net - 在 Vista 中的管理工具中,Microsoft .NET Framework 配置快捷方式消失了,如何查看 GAC?

我正在尝试在 Vista 上查看 GAC 中的项目,我已经安装了所有 .NET 的东西,1.0、2.0、3.5 和 3.5 SP1,但我没有看到管理工具的快捷方式。有谁知道在 GAC 中查看和编辑项目的另一种方法?

0 投票
1 回答
3651 浏览

.net - .NET 程序集绑定方式/原因(1.1、2.0、GAC、策略文件等...)

我一直在解决一些 DLL 版本、策略文件和 GAC 中的项目的一些非常“奇怪”的问题,在我的一生中,我一直无法找到关于 . NET 框架在绑定项目引用时选择它执行的程序集。

首先介绍一下我们所拥有的历史,我们有两个库 DLL 文件,其中包含以下信息

这些程序集中的每一个都加载到 GAC 中,并且 1.1 和 2.0 版本都有一个策略文件,指定要加载的最新版本。

我们有一个项目引用了 1.1.00.1234 版本的 ApplicationAssembly.dll 文件,但是,该项目已被移动,提示路径不再有效。但是,该引用并未失效,而是显示为 02.00.00.1111 版本,而不是预期的 1.1 版本的程序集。

这个过程是如何确定的,为什么马上跳到2.0框架?如果我们指定它是“特定版本”引用,即使使用不正确的提示路径,它也会找到正确的 DLL,但由于将来有破坏东西的风险,我们不能让该设置保持打开状态。

我想问题是为什么会发生这种情况? .NET 如何确定程序集的去向?

0 投票
3 回答
4626 浏览

c# - 行号不正确的异常错误消息

当在 Asp.Net 网页中引发异常时,会显示一条错误消息以及完整的堆栈跟踪。

下面的例子:

堆栈跟踪:
IndexOutOfRangeException:索引超出了数组的范围。

MyNameSpace.SPAPP.ViewDetailsCodeBehind.LoadView() +5112 MyNameSpace.SPAPP.ViewDetailsCodeBehind.Page_Load(Object sender, EventArgs e) +67
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) + 13
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(对象发送者,EventArgs e)+43
System.Web.UI.Control.OnLoad(EventArgs e)+98
... ...

问题是显示的行号与我的代码中引发异常的行不对应。
在上面的示例中,堆栈显示行号 5111,但我在 .cs 文件后面的代码只有 250 行!

aspx 页面存储在 SharePoint 站点中,并且包含后面代码的程序集已部署到 GAC。另外,我已经在调试模式下编译。

鉴于上述设置,我怎样才能找出我的代码中的哪一行导致了异常?



strelokstrelok指出的澄清:

发布模式下,异常前面的数字不是代码行。相反,它是对本机编译代码的偏移,这对人类没有任何意义。更多关于这里的信息:http: //odetocode.com/Blogs/scott/archive/2005/01/24/963.aspx

调试模式下,PDB 文件将自动将本机代码偏移量映射到代码中的 .cs 行,并且显示的数字将是代码中的相应行。

0 投票
7 回答
13076 浏览

.net - 何时以及何时不安装到 GAC 中?

什么时候应该安装到 GAC 中,什么时候不应该?(实际上,我指的是在客户购买我们的产品后安装在他们的机器上)。

  1. 我有一个仅用于我的一个应用程序(GAC 或无 GAC)的程序集?

  2. 我有一个所有应用程序共享的程序集(GAC 或非 GAC)?

  3. 我的所有应用程序都可能使用不同版本的程序集(GAC 或非 GAC)?

这是三种情况……但我相信还有更多。我不一定只寻找这三个问题的答案。

类似的问题:使用 GAC 的优点和缺点是什么?

0 投票
4 回答
839 浏览

asp.net - 我可以为多个 ASP.NET 应用程序使用一个 BIN 文件夹吗?

请记住,我不想使用 GAC,因为我的程序集经常更新,并且我不希望在每次更新后注册它们。

0 投票
4 回答
465 浏览

.net - 是否存在每用户全局程序集缓存之类的东西?

问题说明了一切

0 投票
3 回答
863 浏览

.net - 使构建过程独立于 GAC

我们如何才能使 .NET 项目的构建过程(Dev Studio 2005)完全独立于运行它的特定机器上的 GAC 上安装的内容。

这是我们要解决的问题:根据碰巧安装到 GAC 中的程序集,我们的构建过程会在输出目录中生成不同的 .NET 程序集,然后我们使用这些程序集来构建 .MSI

大概这是因为开发工作室假设,因为它安装在 GAC 中,所以它不应该作为我们产品的一部分安装。

我们希望禁用此行为,以便将项目直接或间接引用的所有 .NET 程序集复制到项目的输出目录中(.NET 2.0 运行时标准程序集除外)。

对于直接程序集引用,我知道设置“Copy Local=True”可以做到这一点。

但是,这不适用于间接程序集引用。

即,我们的一个项目引用了一个名为“A.dll”的程序集,该程序集依赖于另一个名为“B.dll”的程序集,该程序集与“A.dll”位于同一目录中。在 GAC 中未安装“B.dll”的机器上,A.dll 和 B.dll 都将复制到 Dev studio 构建过程中的输出目录中。这就是我们想要的。

但是在将 B.dll 安装到 GAC 的机器上,即使 A.dll 的“Copy Local = True”,B.dll 也不会被复制到输出目录中。

0 投票
3 回答
7139 浏览

dll - GAC和Bin dll之间的冲突

我正在自定义一个 SharePoint 应用程序,并且在我的 Visual Studio 项目中引用了一个也存在于 GAC 中的 dll。该项目构建得很好,但是当我点击页面时,我收到以下错误:

处理过程中发生错误。c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\bef9a111\5466e63c\App_Web_welcomelinks.aspx_-1775745042.a7euki4f.0.cs(128):错误 CS0433:类型“Microsoft. SharePoint.Publishing.PublishingLayoutPage' 存在于 'c:\WINDOWS\assembly\GAC_MSIL\Microsoft.SharePoint.Publishing\12.0.0.0__71e9bce111e9429c\Microsoft.SharePoint.Publishing.dll' 和 'c:\WINDOWS\Microsoft.NET\Framework \v2.0.50727\Temporary ASP.NET Files\root\bef9a111\5466e63c\assembly\dl3\4f0b8d4e\c81e2802_6788c901\PPM.DLL'

关于如何解决这个冲突的任何想法?由于某些依赖关系,我无法从 GAC 卸载 dll,并且如果没有参考,我将无法构建我的项目。

0 投票
1 回答
3772 浏览

sharepoint - Sharepoint SSL Web.Config 访问问题

我有一个奇怪的场景:

我有一个 webpart 调用 GAC 中的一个 dll,它试图从 web.config 文件中读取一个部分。这正常工作,但在 SSL 下它失败了,说它无权访问(配置文件的)路径。但是,它在 mosssvc 帐户下,该帐户可以完全控制 webconfig 文件。

80 web.config 文件和 443 web.config 文件都具有 dll 正在寻找的相同条目,并且 mosssvc 可以完全控制这两个配置。

我尝试将 443 上的信任级别提升到完全,但没有奏效。

有什么想法,或者你能想到的任何我可以尝试的东西吗?

编辑:我应该更清楚:SSL 站点已经创建并且工作正常,直到 GAC 程序集中的一种方法尝试检查 Web 配置。

完整的错误信息是:

0 投票
7 回答
10343 浏览

.net - 为什么我不应该使用 GAC?

沿着 stackoverflow 这条线提出了一些问题,例如 使用 GAC 的优点和缺点是什么 以及何时以及何时不安装到 GAC 中?并且有几个人在网络示例上问过它。对于不使用 GAC,我没有任何令人信服的论据。我确信我很天真,但似乎使用 GAC 比不使用它有更多好处(例如性能和版本控制问题)。

为什么我不应该使用 GAC?