2009-10-15 43 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
相關問題