Hemsida » hur » Varför gör programinstallationerna att du startar om och stänger andra appar?

    Varför gör programinstallationerna att du startar om och stänger andra appar?

    Det har hänt med alla på ett visst sätt - du går för att installera en ny applikation, och Windows berättar att du startar om först. Eller starta om efter. Eller det ber dig att stänga av alla andra ansökningar först. Varför gör det det?

    I dagens geeklektion förklarar vi exakt varför Windows kan vara så irriterande med allt detta omstart och förhoppningsvis ge dig ett bättre perspektiv på varför sakerna fungerar så här.

    Så varför är installatörer irriterande?

    Det korta svaret är att de flesta installatörer är irriterande eftersom de inte heller skrivs mycket bra eller de integreras för djupt i Windows för att kunna kopiera systemfiler och starta allt som behövs utan omstart.

    Problemet är förstärkt eftersom Windows-applikationer ofta använder DLL-filer (dynamiska länkbibliotek) som delas mellan fler än en applikation. Det är en bra idé, men när det gäller att installera och avinstallera program kan det vara irriterande att behöva starta om. Det riktigt ledsna är att många applikationer idag är helt fristående och inte ersätter inbyggda Windows DLL-filer, men deras installatörer gör dig fortfarande omstartad.

    Här är några exempel där installatörer kan vara irriterande:

    • Om den applikation du installerar behöver kopiera nya versioner av filer som för närvarande används av en annan applikation, kommer det antingen att be dig att stänga alla andra program eller det kommer att få dig att starta om.
    • Om det finns en tidigare installation eller Windows Update som väntar på ändringar som kräver en omstart, kommer vissa installationer att misslyckas och ber dig omstart först.
    • Om programmet du installerar har ett plugin för en annan applikation, som en tilläggsmeny till Explorer eller ett webbläsarprogram, kommer det att uppmana dig att starta om eller stänga de andra applikationerna.
    • Ibland bad dåligt skrivna installatörer att du startar om eftersom de inte startar de nödvändiga tjänsterna på egen hand.

    Låt oss titta närmare på några av dessa fall, så du kan förstå vad som händer.

    In-Use-filer måste kopieras vid omstart

    Om programinstallatören behöver kopiera några filer men de används för tillfället eller är systemfiler vid Windows Update, kommer den att använda en väntande funktion i Windows som tillåter ett installationsprogram att ange att en filoperation ska hända efter en omstart, och innan allt i Windows har börjat.

    Installatören skriver en nyckel till följande plats i registret:

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

    Om du har fått ett fel som säger att du måste starta om först kan du öppna den här nyckeln och du får se alla filer som behöver bytas ut vid nästa omstart.

    Du vill förmodligen inte röra med innehållet i den här nyckeln, annars börjar saker snabbt bli konstiga. Det finns några väldigt sällsynta fall där den här nyckeln inte tömms även efter flera omstart och du kan behöva torka innehållet i nyckeln - men du borde noga undvika att göra det om du inte är säker.

    Installation redan pågår

    Vissa installatörer startar inte om det finns en pågående installation pågår, så de kommer att kontrollera följande nyckel för att se om det redan finns en installation:

    HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ Currentversion \ Installer \ InProgress

    Jag har ingen skärmdump för den här, men du kan få idén från namnet på nyckeln.

    Windows Update gör att du startar om

    Om du får ett meddelande som säger att du inte kan installera en applikation förrän du startar om datorn, beror det på att Windows Update kräver en tvungen omstart. Så, till exempel, om du får detta felmeddelande:

    Det beror på att du förmodligen klickade på Fördröjning när du såg den här dialogrutan dyker upp:

    Om du går in i registret ser du att det finns en RebootRequired-nyckel på den här platsen i registret:

    HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \
    CurrentVersion \ WindowsUpdate \ Auto Update

    Det finns en hel massa GUID-värden över på höger sida, och medan de inte hänför sig till något i registret är det faktum att de är där det som utlöser det meddelandet.

    Tekniskt kan du förmodligen exportera innehållet i nyckeln, installera programmet och sedan lägga tillbaka dem - men det kan bryta något och omstart är inte så ont det är det?


    Så nu har du lärt dig lite mer om varför programinstallatörer jobbar som de gör. Finns det något annat du vill veta? Förklara dina frustrationer i kommentarerna, och vi ska se om vi inte kan tända lite ljus på dem.