解压缩DLL问题后重新注册DLL

时间:2011-07-22 09:13:13

标签: .net dll assemblies gac

我已按照指南从How to extract an assembly from the GAC?

从GAC获取DLL 下面是我已经完成的步骤:

  1. 运行regsvr32 / u C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ shfusion.dll

  2. shfusion.dll是一个资源管理器扩展DLL,它为GAC文件夹提供了独特的外观。取消注册此文件将删除程序集缓存查看器,然后GAC文件夹将显示为资源管理器中的任何普通文件夹。

  3. 打开“%windir%\ assembly \ GAC_MSIL”。

  4. 浏览到你的DLL文件夹深入找到你的DLL。

  5. 将DLL复制到硬盘上的某个位置并从项目中引用它

  6. 运行“regsvr32 / i%windir%\ Microsoft.NET \ Framework \< .NET版目录> \ shfusion.dll”重新注册shfusion.dll文件并重新获得原始的不同视图GAC

  7. 当我执行第6步时,我发现了以下警告信息:

    “C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ shfusion.dll已加载,但未找到DllInstall入口点。

    无法注册此文件。“

    如何重新注册DLL?

    谢谢。

2 个答案:

答案 0 :(得分:5)

删除/i

"regsvr32 %windir%\Microsoft.NET\Framework\<.NET version directory> \shfusion.dll" 

这对我有用。

您可能还想使用shfusion.dll文件夹中的Framework64

答案 1 :(得分:0)

如果你的系统是64位,你必须从框架64尝试。这是。

  

regsvr32%windir%\ Microsoft.NET \ Framework64 \ v2.0.50727 \ shfusion.dll