我想使用Publish.GacRemove函数从GAC中删除程序集。但是,我不明白我应该通过哪条路径作为论据。
它应该是原始DLL的路径(如果我在GAC中安装它后将其删除?)或GAC中程序集的路径?
更新
我终于使用了these API wrappers。
答案 0 :(得分:2)
我使用GacInstall
发布我的程序集,但是一旦安装到gac中,我有时会删除程序集的“临时”副本。
然后,如果我想从gac卸载程序集,我没有原始路径上的文件。这导致了一个问题,因为除非保留原始文件,否则我似乎无法使用GacRemove
方法卸载程序集。
结论:是的,您需要指定原始DLL的路径。 (并尝试不要在以后移动/删除它)。如果您将其删除,请尝试将文件从GAC复制到原始路径,然后您应该可以使用GacRemove
将其卸载。
答案 1 :(得分:1)
我不太确定,但我相信GacRemove应该和gacutil / u做同样的事情。所以,它应该是你的DLL的路径。但是它不必是相同的DLL文件。原件的副本应该足够了,因为重要的是DLL的唯一ID。