Используйте PowerShell для просмотра содержимого глобального кэша сборок (GAC) - PullRequest
16 голосов
/ 19 мая 2009

Есть ли способ использовать PowerShell для просмотра содержимого GAC?

Ответы [ 6 ]

17 голосов
/ 19 мая 2009

Другой вариант заключается в том, что Расширения сообщества PowerShell устанавливает поставщика GAC, поэтому вы можете сделать это:

dir gac:

Если вы используете PowerShell V2, не забудьте взять бета-версию 1.2.

6 голосов
/ 19 мая 2009

Для просмотра записей в GAC;

gacutil -l

В powershell вы можете анализировать вывод текста выше. Я не знаю управляемого интерфейса для проверки GAC.

5 голосов
/ 14 марта 2016

Как указано в документах :

Начиная с .NET Framework 4, местоположением по умолчанию для глобального кэша сборок является% windir% \ Microsoft.NET \ assembly. В более ранних версиях .NET Framework расположение по умолчанию:% windir% \ assembly.

Вы можете искать в соответствующем поддиректории или даже в обоих из них.

3 голосов
/ 04 марта 2013

У меня был тот же вопрос. Вопрос стал более заметным с .Net 4.0, и там не было плагина Windows Explorer, доступного для просмотра содержимого. GacUtil работает, но недостаточно гибок и требует много времени для установки. Параметр PowerShell Community Extensions ограничен по своей функциональности и содержит множество других CmdLets, которые мне не нужны. Поэтому я написал свой собственный модуль PowerShell для просмотра и изменения GAC. Его можно найти на http://powershellgac.codeplex.com

Этот проект перемещен на GitHub. Теперь вы можете найти его на:

https://github.com/LTruijens/powershell-gac

Его также можно найти в галерее PowerShell:

https://www.powershellgallery.com/packages/Gac/1.0.1

# Show the assemblies in the GAC, including the file version
Get-GacAssembly SomeCompany* | Format-Table -View FileVersion
1 голос
/ 19 мая 2009

Вы можете сделать это просто из командной строки:

cd C:\Windows\assembly
dir

GAC имеет особую структуру каталогов, и вы не должны перемещать или удалять там что-либо с помощью командной строки - лучше использовать Windows Explorer (GUI) или gacutil (Cli)

0 голосов
/ 05 ноября 2015

Если вы хотите найти конкретную сборку в GAC.

Также обратите внимание, что поскольку MS изменила структуру GAC, вы можете использовать опцию -Recurse из корня для поиска во всем GAC.

CD C:\Windows\assembly 
ls -Recurse | ?{$_.Name -like "*log4net*"}
...