Как определить, какие приложения имеют данную сборку, зарегистрированную в GAC? - PullRequest
4 голосов
/ 22 октября 2011

При попытке удалить данную сборку (в данном случае log4net.dll, но она должна применяться в любом подобном случае) с помощью gacutil.exe, действие завершается неудачно из-за того, что приложение требуется сборкой.Однако я не могу понять, как определить, какие приложения на самом деле требуют этого.Поскольку выходные данные, по-видимому, указывают на то, что требование зарегистрировано в базе данных MSI / установщике Windows, может показаться, что некоторые утилиты могли бы перечислить все сборки GAC, зарегистрированные в базе данных MSI (и я мог бы просто искать записи с помощью log4net.dll) или разрешите мне указать конкретную сборку GAC, и в ней будут перечислены зависимости (в идеале с любыми связанными цепочками зависимостей, если они существуют:)

C:\ » gacutil /u log4net
Microsoft (R) .NET Global Assembly Cache Utility.  Version 4.0.30319.1
Copyright (c) Microsoft Corporation.  All rights reserved.


Assembly: log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821, processorArchitecture=MSIL
Unable to uninstall: assembly is required by one or more applications
Pending references:
              SCHEME: <WINDOWS_INSTALLER>  ID: <MSI>  DESCRIPTION : <Windows Installer>
Number of assemblies uninstalled = 0
Number of failures = 0

Спасибо!

1 Ответ

4 голосов
/ 08 января 2012

Я никогда не находил ничего хорошего для этого.Что я сделал (это сработало, но плохо), так это запустил procmon, чтобы увидеть, к чему обращался gacutil, и заметил, что он нажал клавишу HKCR \ Installer \ Products \ 098D637EEF1AFF14586E779FE4C38C4D.Когда я посмотрел под этим ключом в regedit, он показал, что продукт был «Программное обеспечение Plantronics Spokes».

Я зашел в appwiz.cpl и удалил это приложение, затем gacutil / l log4net показал, что log4net не былв GAC больше.

Я все еще хотел бы найти лучший ответ, но я думаю, что пока что "запустите procmon, filter to process = gacutil.exe и путь к HKCR \ Installer \ Products" находится по адресуминимум лучше, чем ничего.

...