有没有更简单的方法 view/search GAC 中的内容?

Is there an easier way to view/search what is in the GAC?

我知道微软声明 运行

gacutil -l

从 VS 命令提示符获取列表。

但是我正在处理这个问题。

所以当我 运行 列表显示内容遍布 window 并且我在 gac 中总共有 1649 个项目。
在这种情况下,我现在知道我需要删除哪些 Oracal dll。那么有没有更简单的方法来 view/search GAC 中的内容?

您可以使用Windows Explorer 浏览GAC。打开它并导航到 %systemroot%\assembly:

您可以看到每个程序集的各种详细信息,按Del会提示您是否要卸载该程序集。

在 c:\windows\assembly 中搜索不会有帮助,因为从 .net 4.0 开始,GAC 有一个不同的位置 (%windir%\Microsoft.NET\assembly)。

看这里.NET 4.0 has a new GAC, why?

gacutil 是要走的路,因为它会在两个位置进行搜索,即 %systemroot%\assembly 和 %windir%\Microsoft.NET\assembly\

你的问题可以试试

gacutil -l Oracle.DataAccess(Oracle.DataAccess.dll 我记得是为 Oracle Data Provider for .NET 安装的)

但是上面的命令不支持通配符,所以程序集名称应该完全匹配。

一个 hack 是将结果通过管道传递给 find 命令,然后应用过滤器

gacutil.exe -l | find /I "oracle"(确保 VS 命令提示符在管理员模式下打开)