Почему установщика Windows (.msi-файлы) занимает так много времени, чтобы удалить, чем другие установщики?

начиная с Windows XP дней, установщики Windows (.msi-файлы), в том числе InstallShield installers (который является лишь начальной загрузкой для MSI) взял вокруг пять раз дольше, чтобы удалить приложение, чем другие установщики. То же самое обычно true об установке.

Почему они до сих пор так долго, и почему люди до сих пор используют MSI для установки? Например:

удалить VLC-занимает около 5 считанные секунды.


Uninstall XYZ-запускает " подготовка к удалению..."затем за 15 секунд.

все это делают удаление файлов и чистку реестра (которые могут включать com-регистраций), так почему так долго?

6
задан kinokijuf
14.05.2023 4:36 Количество просмотров материала 3507
Распечатать страницу

4 ответа

установщик Windows сначала систематически создает точку восстановления системы, что является довольно медленной операцией.

также из статьи под названием, соответственно, "установщик Windows отстой" выдержка:

раньше считалось, что установка будет состоит из выполнения программы и принимая несколько простых шагов для установки ваше програмное обеспечение, после этого делает обратный дальше деинсталляция.

Это не так, как установщик Windows завод. Вместо запуска программы просто установите и пусть это будет сделано с исследуются состояние системы, затем проверяет состояние базы данных, программы установщик, после этого делает серию усложненные расчеты о том, как чтобы примирить эти два аспекта.

кажется, что вместо того, чтобы бежать скрипт установки, речь идет о решение проблемы коммивояжера. Вот почему он работает так медленно. Или на по крайней мере, это мой впечатление.

Я также добавляю, что установщик Windows хранит всю информацию в реестре, который не является самой быстрой базой данных в мире.

32
отвечен harrymc 2023-05-15 12:24

установщик Windows действительно имеет репутацию медленного. Есть несколько вещей, которые способствуют этому, и я собираюсь обратиться к ним ниже. Но в конечном счете, следует спросить себя, действительно ли одна, две или три минуты являются предметом спора при установке и удалении программного обеспечения. Я беру больше времени на то, чтобы листать телеканалы:)

Реестр

Это преступник номер один. Установщик Windows интенсивно использует реестр для своей работы. По мере взросления системы, установки и удаления приложений, а также увеличения размера или фрагментации реестра MSI будет работать медленнее. То же самое приложение будет устанавливать и удалять гораздо быстрее на нетронутой установке Windows, чем на зрелой системе. Решение здесь состоит в том, чтобы попытаться сохранить реестр чистым и дефрагментированным.

для очистки реестра, использовать один из многих инструментов, доступных там. Но для дефрагментации реестра я не могу порекомендовать достаточно NTREGOPT для внутренней оптимизации улья и PageDefrag для физической дефрагментации файла.

причина, по которой операции MSI может стать медленным в реестре связано с тем, как MSI использует его. Установщик Windows использует реестр, чтобы отслеживать, какие продукты были установлены, какие компоненты и в каком месте он был установлен. Исходные идентификаторы GUID установки используются в сжатом формате. Сведения об установках для каждого компьютера можно найти по адресу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18, в то время как данные каждого пользователя находятся рядом с ним в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\ и на ключ с пользовательским SID.

оба эти ключа могут быть довольно большими и содержать множество подразделов и значений. Они контролируют продукцию, компоненты и KeyPaths каждого установленного приложения. Вся эта информация должна быть прочитана и обработана для правильной процедуры удаления. Однако формат реестра перечисляет ключи в алфавитном порядке, который позволяет для двоичного поиска. Но ценности таковыми не являются. Они хранятся по мере их создания, поэтому необходимо выполнить процедуру линейного поиска. Что замедляет работу алгоритма.

в целом, MSI - довольно полный и точный метод установки и удаления программного обеспечения. Но он страдает от своей зависимости от реестра. Система превосходная. Это реестр Windows, который должен был иметь свой капитальный ремонт давно:)

дополнительные сведения:

Для глубокого анализ действий MSI во время каждой процедуры установки или удаления см. В разделе в этой статье это объясняет, как настроить отладку MSI. Или, за менее, но все же ценную информацию,этот один как активировать регистрацию.

19
отвечен A Dwarf 2023-05-15 14:41

установщик Windows имеет много больших преимуществ для корпоративного развертывания, некоторые из которых я описал здесь: https://serverfault.com/a/274609/20599

много неторопливость сеанса установщика Windows из-за его возможности отката. Во-первых, он создает восстановление перед установкой или удалением (при условии, что восстановление системы не было отключено). Тогда это будет обратно up все затронутые файлы во время удаления и установки, чтобы гарантировать, что система может быть восстановлена в исходное состояние в случае возникновения ошибки.

еще один фактор, способствующий тому, что все компоненты в MSI будет зарегистрировано в реестре. Это касается некоторые накладные расходы.

для скомпилированных файлов MSI некоторое время также необходимо извлечь установочные файлы.

см. этот ответ для технические сведения для ускорения установки MSI.

6
отвечен Stein Åsmul 2023-05-15 16:58

Установщики Windows настолько широко используются по многим причинам-интеграция операционной системы, политики безопасности, автоматической установки и многое другое.

самая распространенная причина, о которой я могу думать, - это автоматическая установка и сетевые дистрибутивы. Крупные корпорации могут легко распространять приложения, имея .MSI-файл на сетевом диске, а затем просто вызов batchfile (или приложения мастера распространения) на удаленном компьютере для автоматизации процесс установки.

в то время как другие варианты существуют за пределами .MSI файлы, есть некоторые уникальные функции, которые интегрируются с большинством версий Windows , что многие другие установщики не имеют.

и только так вы знаете - InstallShield не всегда для MSI-файлы. Они также имеют свои собственные установки.

3
отвечен Breakthrough 2023-05-15 19:15

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх