Реестр Windows — UninstallString против QuietUninstallString

#windows #windows-installer #registry

Вопрос:

Я пишу некоторые записи реестра в своем пользовательском скрипте установки, и мне интересно, каковы последствия включения обоих UninstallString «и QuietUninstallString «.

Если присутствуют обе записи, как я могу управлять способом вызова деинсталлятора (беззвучный режим или беззвучный режим) из cmd/PowerShell?

Ответ №1:

Ключ UninstallString является обязательным и содержит команду для удаления пакета в целом. Этот ключ используется, если пользователь удаляется вручную (через панель управления). Часто деинсталляторы не работают беззвучно и даже не взаимодействуют с пользователем (т. е. они задают вопросы).

Это соглашение, которое QuietUninstallString содержит команду для автоматического удаления пакета. Команда, записанная на этот ключ, не должна взаимодействовать (например, запрашивать пользователя). Этот ключ является необязательным.

Если в вашем пакете есть неинтерактивный режим удаления (ИМХО всегда хорошо), вам следует создать этот дополнительный ключ.

Если ваш деинсталлятор всегда работает без звука (почему бы и нет), вам следует записать команду на оба ключа.

Скрипт, пытающийся удалить программное обеспечение в автоматическом режиме, должен проверить (и запустить) QuietUninstallString . Если этот ключ отсутствует, велика вероятность того, что командная строка в UninstallString работает беззвучно.