我应该将什么路径作为 AssemblyPath 参数传递给 Publish.GacRemove 函数?

StackOverflow https://stackoverflow.com/questions/45729

  •  09-06-2019
  •  | 
  •  

我想使用 发布.GacRemove 函数从 GAC 中删除程序集。但是,我不明白我应该通过什么路径作为参数。

它应该是原始 DLL 的路径(如果我在 GAC 中安装后将其删除怎么办?),还是 GAC 中程序集的路径?

更新:

我终于用了 这些 API 包装器.

有帮助吗?

解决方案

我正在使用 GacInstall 发布我的程序集,但是一旦安装到 gac 中,我有时会删除程序集的“临时”副本。

然后,如果我想从 gac 卸载程序集,我在原始路径中没有这些文件。这导致了一个问题,因为我似乎无法得到 GacRemove 除非我保留原始文件,否则卸载程序集的方法。

结论:是的,您需要指定原始DLL的路径。(并尝试稍后不要移动/删除它)。如果您删除它,请尝试将该文件从 GAC 复制到您的原始路径,您应该能够使用以下命令卸载它 GacRemove.

其他提示

我不太确定,但我相信 GacRemove 应该做与 gacutil /u 相同的事情。所以,它应该是你的DLL的路径。但它不必是同一个 DLL 文件。原始版本的副本就足够了,因为重要的是 DLL 的唯一 ID。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top