Домашняя » как » Почему вы не можете удалить несколько программ одновременно в Windows?

    Почему вы не можете удалить несколько программ одновременно в Windows?

    Предположим, у вас есть небольшая группа программ, которые вы хотите удалить в своей системе Windows, но Windows позволит вам удалить их только по одной за раз. Это почему? Что мешает вам удалить несколько программ одновременно?

    Сегодняшняя сессия вопросов и ответов пришла к нам благодаря SuperUser - подразделению Stack Exchange, группе веб-сайтов вопросов и ответов, управляемой сообществом..

    Вопрос

    Читатель SuperUser Джероен Боллен хочет знать, почему человек не может удалить несколько программ одновременно в Windows:

    Почему Windows удерживает вас от удаления или удаления нескольких программ одновременно? В чем причина этого? Будет ли это испортить внутреннюю систему?

    Я не хочу удалять несколько программ одновременно, я просто ищу причину (ы), почему это не будет вариант.

    Что мешает людям удалять несколько программ одновременно в Windows??

    Ответ

    Ответы на них есть у пользователей SuperUser, Ultrasawblade и techie007. Прежде всего, ультразвуковой клинок:

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

    При проектировании любой базы данных всегда возникает вопрос: хотите ли вы скорость или точность / безопасность? Учитывая, что установщики могут изменять конфигурацию системы, а сбой может привести к неработоспособности системы, безопасность имеет приоритет над скоростью.

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

    Теперь я считаю, что сам механизм MSI обеспечивает установку, изменение или удаление только одной программы за раз. Если вы попытаетесь запустить .MSI Например, если файл удаляется другим, он либо не запустится, либо будет ожидать завершения текущего процесса удаления. Установщики, не являющиеся MSI, могут вести себя не так, поскольку они не используют механизм MSI. Но из-за этого решения по проектированию безопасности, возможно, поэтому appwiz.cpl настаивает на том, чтобы позволить вызывать только один деинсталлятор.

    CCleaner позволяет запускать деинсталляторы, не дожидаясь завершения ранее запущенных, но инсталляторы MSI, скорее всего, все равно не будут работать параллельно из-за вышеизложенного.

    Далее следует ответ от techie007:

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

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

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

    Большинство деинсталляторов отслеживают то, что они изменяют, поэтому они могут успешно откатиться в случае сбоя. Если кто-то не знает обо всех изменениях, которые были сделаны (другими деинсталляторами), он может на самом деле сделать вещи УДАЛЕННЫ, если попытается откатить неудачную установку..

    Система установщика Windows была создана с целью стать единой системой, которую могут использовать все разработчики приложений (в Windows), чтобы избежать подобных проблем..


    Есть что добавить к объяснению? Отключить звук в комментариях. Хотите узнать больше ответов от других технически подкованных пользователей Stack Exchange? Ознакомьтесь с полным обсуждением здесь.