如何将修改后的dll添加到全局程序集缓存中?

时间:2009-10-15 19:33:26

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

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

如果你的答案涉及使用gacutil.exe,请告诉我在哪里可以在我的电脑上找到它或我可以在哪里下载它。谢谢!

5 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:1)

"C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\gacutil.exe" /i "strongnamed.dll" /f /nologo

答案 2 :(得分:1)

非常简单:开始 - >程序 - > Microsoft Visual Studio 2005/2008 - > Visual Studio工具 - > Visual Studio 2005/2008命令提示符

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

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

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

答案 3 :(得分:0)

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

答案 4 :(得分:0)

  1. 打开Visual Studio命令提示符
  2. 首先打开Visual Studio命令提示符(对于Visual Studio 2010,路径是程序 - > Visual Studio 2008 - > Visual Studio工具 - > Visual Studio 2008命令提示符) 将在Visual Studio 2010命令提示符路径中创建以下步骤中提到的所有文件。

    1. 生成KeyFile 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