2009-10-15 38 views
0

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

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

+0

您是否控制使用该连接器的客户端应用程序? – 2009-10-15 19:59:40

+0

我不完全确定。最后,我正在编写一个Silverlight应用程序,但实体框架是实际消耗连接器的东西(我认为......可能存在另一层我不知道的抽象层)。我认为这是流程:MySQL DB - > MySQL Connector/.Net - > Entity Framework - > RIA Services - > Silverlight – 2009-10-15 20:04:40

回答

0

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

+0

我假设“私钥”与“公钥令牌”不同。那么有没有什么办法让我的“自定义”dll在程序中可用? – 2009-10-15 19:39:29

+0

恐怕不是,你想要做的就是签署旨在防止的事情。 – 2009-10-15 19:44:28

+0

这是有道理的。这仍然令人沮丧。我会继续挖掘正确的方式来做到这一点。 – 2009-10-15 19:48:02

1

打开Windows资源管理器(WindowsKey + E)。去c:\windows\assembly。打开第二个资源管理器窗口并将您的装配拖放到第一个窗口。

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

很简单:开始 - >程序 - >微软的Visual Studio 2005/2008 - > Visual Studio工具 - > 的Visual Studio 2005/2008命令提示符

一个cmd出现,在那里你可以键入GACUTIL 。

它还显示其所在的路径:

C:\ Program Files文件\微软的Visual Studio 9.0 \ VC>我的电脑上。

0
  1. 打开Visual Studio命令提示符

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

  1. 生成一个密钥文件 SN -k keyPair.snk
  2. 获取MSIL程序集 ILDASM SomeAssembly.dll /out:SomeAssembly.il
  3. 重命名原始装配,以防万一 仁SomeAssembly .DLL SomeAssembly.dll.orig
  4. 构建从MSIL输出一个新的装配和你KeyFile中 ILASM SomeAssembly.il/DLL /key=keyPair.snk
  5. 到GAC安装DLL gacutil -i SomeAssembly.dll
相关问题