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

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

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

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

    Так почему монтажники раздражают?

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

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

    Вот пара случаев, когда установщики могут раздражать:

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

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

    Используемые файлы должны быть скопированы при перезагрузке

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

    Установщик запишет ключ в следующую папку реестра:

    HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager
    \ PendingFileRenameOperations

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

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

    Установка уже выполняется

    Некоторые установщики не запускаются, если выполняется текущая установка, поэтому они проверят следующий ключ, чтобы увидеть, если установка уже происходит:

    HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ Installer \ InProgress

    У меня нет скриншота для этого, но вы можете понять идею по названию ключа.

    Центр обновления Windows делает перезагрузку

    Если вы получаете сообщение о том, что вы не можете установить приложение, пока не перезагрузите компьютер, это из-за Windows Update, требующей принудительной перезагрузки. Так, например, если вы получаете это сообщение об ошибке:

    Это потому, что вы, вероятно, нажали «Отложить», когда увидели всплывающее диалоговое окно:

    Если вы зайдете в реестр, вы увидите, что в этом месте в реестре находится ключ RebootRequired:

    HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \
    CurrentVersion \ WindowsUpdate \ Автообновление

    Существует целая куча значений GUID справа, и хотя они не относятся ни к чему в реестре, факт, что они есть, вызывает то сообщение.

    Технически вы, вероятно, могли бы экспортировать содержимое ключа, установить приложение, а затем поместить их обратно - но это может что-то сломать, и перезагрузка не так уж и болезненна, не так ли??


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