Устранение неисправностей фантом Windows установка зависимости - PullRequest
1 голос
/ 30 января 2020

У меня проблема, очевидно, я указываю c на один P C (работает Windows 10 Enterprise), где разрабатываемый мной установщик WiX не удаляется правильно.

Установщик - это пакет, включающий два наших собственных MSI: SQL Server Express 2019 и. NET Framework 4.7.2 (последний из которых, в данном случае, не устанавливается, поскольку он уже присутствует). Пакет устанавливается правильно, но при удалении не удается удалить два наших MSI, сообщая в журнале следующее:

Will not uninstall package: XYZ, found dependents: 1
Found dependent: {0aab0314-39c3-435d-8fc7-747b0db56cc4}, name: Unknown

Поиск в реестре (HKEY_CLASSES_ROOT \ Installer \ Dependencies) сразу после установки, существует три записи (не считая SQL Server) - по одной для нашего пакета, и по одной для наших двух MSI. У пакета есть один зависимый элемент - сам по себе - и каждый из двух MSI имеет два зависимых элемента - пакет и тайный GUID (0aab0314 -...). Тайный GUID остается постоянным в течение нескольких циклов установки-удаления.

Я искал в реестре сверху вниз и не нашел никакой другой ссылки на этот GUID; Я также попытался посмотреть в C: \ ProgramData \ Package Cache, но там тоже не нашел. Я использовал dark.exe для декомпиляции пакета и двух MSI, а затем использовал grepWin для поиска всех 400 с лишним файлов, но безрезультатно. Я могу только успешно полностью удалить наше программное обеспечение на этом компьютере, используя инструмент очистки Microsoft (https://support.microsoft.com/en-us/help/17588/windows-fix-problems-that-block-programs-being-installed-or-removed), и я не знаю, как полностью решить эту проблему.

Любой идеи, что может вызвать это или другие места, которые я мог бы попытаться решить это? К сожалению, мои знания MSI и WiX невелики и почти полностью были получены в ходе этого конкретного проекта.

...