2011-04-19 69 views
1

我正在關注this example on creating a custom url rewrite provider。一切都很好,但由於某種原因沒有安裝在gac中。以下是我在「後期製作」命令中嘗試過的內容:Gac安裝問題

CALL "%VS100COMNTOOLS%\vsvars32.bat" > NULL gacutil.exe /if $(TargetPath) 

CALL "%VS100COMNTOOLS%\vsvars32.bat" > NULL "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\x64\gacutil.exe" /if $(TargetPath) 

"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\x64\gacutil.exe" /if $(TargetPath) 

gacutil.exe" /if $(TargetPath) 

最後一個實際上失敗,代碼爲9009,因此第三個用於修復它。前兩個我完全無能爲力。他們不會失敗,但也不會做任何事情。第三個似乎工作,但導航到C:\ WINDOWS \組裝沒有列出我的DLL在那裏,當我嘗試在IIS中添加提供程序它說它無法在GAC中找到它。我的大會強烈簽署。任何想法是怎麼回事?

+1

如果這是爲.net 4.0查看新的GAC位置%windir%\ Microsoft.NET \ assembly \ – 2011-04-19 15:36:42

+0

是的,我剛剛在gac_32目錄下找到它。任何想法爲什麼IIS不把它當作可用的提供者? – Micah 2011-04-19 15:37:51

+0

@Sergei - 感謝您的線索。這幫助我修復。我的項目是.net 4,但我的網站運行.net 3.5。如果你把它寫成答案,我會把它標記爲正確的。 – Micah 2011-04-19 15:44:38

回答

0

您也可以使用Microsoft Web Deploy Tool(無論如何v2)安裝到gac。使用「同步」選項:

cd "\Program Files\IIS\Microsoft Web Deploy V2" 
msdeploy.exe -verb:sync -source:gac Install="c:\path\to\file\ReplaceProvider.dll" -dest:auto 
1

我遇到的問題不是我在@Sergei建議的錯誤位置。我將它作爲.NET 4.0程序集安裝,因此位於其他位置。 IIS的問題是我的網站在.NET 3.5中運行,因此無法找到程序集。