Информация об изменениях

Сообщение ProgID, x86, x64, MSI и Uninstall от 26.01.2019 20:30

Изменено 08.02.2020 18:24 DDDX

ProgID, x86, x64, MSI и Uninstall
Внезапно обнаружил чудную проблему с деинсталяцией COM-объектов.

Есть два MSI-пакета с COM-объектами: для 32 и 64 бит.

Оба ставятся и работают как ожидается.

При деинсталляции одного из них, перестает работать второй.

Исследование показало, что оба пакета создают ProgID-ы в HKCR.

И когда деинсталлируется любой из пакетов, он эти ProgID-ы удаляет.

Поэтому второй пакет перестает работать.

Если руками добавить удаленный ProgID (или выполнить repair второго пакета) то второй пакет снова начинает работать.

Я свято верил, что MSI (где-то) хранит счетчики использования ключей реестра и не удаляет их если счетчик не обнулен.

Нашел в сети вот этот древний топик, но решения не увидел

Как эта проблема решается?
ProgID, x86, x64, MSI и Uninstall
Внезапно обнаружил чудную проблему с деинсталяцией COM-объектов.

Есть два MSI-пакета с COM-объектами: для 32 и 64 бит.

Оба ставятся и работают как ожидается.

При деинсталляции одного из них, перестает работать второй.

Исследование показало, что оба пакета создают ProgID-ы в HKCR.

И когда деинсталлируется любой из пакетов, он эти ProgID-ы удаляет.

Поэтому второй пакет перестает работать.

Если руками добавить удаленный ProgID (или выполнить repair второго пакета), то второй пакет снова начинает работать.

Я свято верил, что MSI (где-то) хранит счетчики использования ключей реестра и не удаляет их если счетчик не обнулен.

Нашел в сети вот этот древний топик, но решения не увидел

Как эта проблема решается?