如何从GAC中卸载全局assembly

gadget111 2003-11-24 09:16:16
把一个global assembly加入GAC后,在卸载的时候提示不能卸载,
因为一直被其他程序引用着,用/lr选项查看,发现是windows Installer.
所以用gacutil /u无法卸载assembly,请问这种情况如何卸载assembly

谢谢
...全文
424 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
gadget111 2003-12-03
  • 打赏
  • 举报
回复
default中键值应该可以删掉得阿

如果在资源管理器中,右键删除其实就是卸载,因为在资源管理器中该目录中得操作是.net framework托管了得, 如果还有程序引用该assembly是不允许删除得.
waki 2003-12-02
  • 打赏
  • 举报
回复
直接删除DLL文件应该可以。
gadget111 2003-12-01
  • 打赏
  • 举报
回复
在google上查了,还是用了把 juqiang 的方法改了一下,将HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Assemblies\Global 下面
default键值删掉,结果就OK了,而且发现自己install的assembly的引用数目
变成了0.

估计那个键值将新装入的assembly默认为和window installer联系起来.具体的
意义和其他后果还不清楚.不过是可以用了.
lockwoods 2003-12-01
  • 打赏
  • 举报
回复
奇怪了!我的注册表中没有办法删除这个default值
gadget111 2003-11-27
  • 打赏
  • 举报
回复
我看了一下GAC中得assembly, 每个得引用数目都是1,估计windows installer会自动引用其中得每个全局assembly,但是如何把这个引用连接去掉,还没找到,是否是不能去掉这个引用连接得????
juqiang 2003-11-26
  • 打赏
  • 举报
回复
到google上search了一下,找到一个“鸟语”的帖子,好像和install的时候,需要refrence有关。
http://weblogs.asp.net/ralfw/posts/9485.aspx

搜索的关键字就是:assembly is required by one or more applications
Pending references

搂主自己找找吧!如果找到了解决办法,和兄弟们说一下。
HandsomeHu 2003-11-26
  • 打赏
  • 举报
回复
你是不是把他做成com+的msi安装包了?把那个程序删除以后试试。
juqiang 2003-11-25
  • 打赏
  • 举报
回复
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Assemblies\Global,看看这个key,好像没有别的办法了。。。
gadget111 2003-11-25
  • 打赏
  • 举报
回复
似乎下面没有我安装的assembly
卸载/u命令后的提示内容是:

Microsoft (R) .NET Global Assembly Cache Utility. Version 1.1.4322.573
Copyright (C) Microsoft Corporation 1998-2002. All rights reserved.


Assembly: VerTestAsbly, Version=3.2.1.1, Culture=neutral, PublicKeyToken=7bc7a9f
5f2810a37, Custom=null
Unable to uninstall: assembly is required by one or more applications
Pending references:
SCHEME: <WINDOWS_INSTALLER> ID: <MSI> DESCRIPTION : <Windows Installer>

Number of items uninstalled = 0
Number of failures = 0

17,740

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧