【问题标题】:How do I add a modified dll to the Global Assembly Cache?如何将修改后的 dll 添加到全局程序集缓存?
【发布时间】:2009-10-15 19:33:26
【问题描述】:

我的 PC 上安装了 MySQL Connector/NET。我修改了源代码并重新编译了其中一个 dll(MySQL.Data.dll)。已经安装了程序,如何将这个dll添加到全局程序集缓存中?

如果您的回答涉及使用 gacutil.exe,请告诉我在我的 PC 上哪里可以找到它或者我可以在哪里下载它。谢谢!

【问题讨论】:

  • 您是否控制使用该连接器的客户端应用程序?
  • 我不太确定。最后,我正在编写一个 Silverlight 应用程序,但实体框架是实际消耗连接器的东西(我认为......背后可能还有另一层我不知道的抽象层)。我认为这是流程:MySQL DB -> MySQL Connector/.Net -> Entity Framework -> RIA Services -> Silverlight

标签: .net dll gac global-assembly-cache


【解决方案1】:

打开 Windows 资源管理器 (WindowsKey+E)。转到c:\windows\assembly。打开第二个资源管理器窗口并将程序集拖放到第一个窗口。

【讨论】:

    【解决方案2】:
    "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\gacutil.exe" /i "strongnamed.dll" /f /nologo
    

    【讨论】:

      【解决方案3】:

      很简单:开始-> 程序-> Microsoft Visual Studio 2005/2008 -> Visual Studio Tools -> Visual Studio 2005/2008 命令提示符

      出现一个 cmd,您可以在其中输入 gacutil。

      它还会向您显示它所在的路径:

      C:\Program Files\Microsoft Visual Studio 9.0\VC> 在我的电脑上。

      【讨论】:

        【解决方案4】:

        您可以将其放入 GAC,但除非您有权访问最初用于签名的私钥,否则安装的程序将无法识别它。

        【讨论】:

        • 我假设“私钥”不同于“公钥令牌”。那么有什么方法可以让我的“自定义”dll 在程序中可用?
        • 恐怕不行,你想要做的是签名旨在防止的事情。
        • 这是有道理的。它仍然令人沮丧。我会继续寻找正确的方法来做到这一点。
        【解决方案5】:
        1. 打开 Visual Studio 命令提示符

        首先打开 Visual Studio 命令提示符(对于 Visual Studio 2010,路径是 Programs --> Visual Studio 2008 --> Visual Studio Tools --> Visual Studio 2008 Command Prompt ) 以下步骤中提到的所有文件都将在 Visual Studio 2010 命令提示符路径中创建。

        1. 生成密钥文件 sn -k keyPair.snk
        2. 获取程序集的 MSIL ildasm SomeAssembly.dll /out:SomeAssembly.il
        3. 重命名原始程序集,以防万一 ren SomeAssembly.dll SomeAssembly.dll.orig
        4. 从 MSIL 输出和您的 KeyFile 构建一个新程序集 ilasm SomeAssembly.il /dll /key=keyPair.snk
        5. 将 DLL 安装到 GAC gacutil -i SomeAssembly.dll

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2019-05-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多