4Sep

Kodėl įdiegiama programa leidžia iš naujo paleisti ir uždaryti kitas programas?

Tai kažkada atsitiko visiems - jūs einate įdiegti naują programą, o "Windows" jums pirmiausia turi iš naujo paleisti kompiuterį.Arba perkraukite po. Arba jis prašo pirmiausia uždaryti visas kitas programas. Kodėl tai daro?

Šiuolaikinėje "Geek" pamokoje mes tiksliai paaiškinsime, kodėl "Windows" gali būti toks erzina, kai visa tai persijungia į kompiuterį, ir tikimės, kad galėsite geriau suprasti, kodėl viskas taip veikia.

Taigi kodėl montuotojai yra erzina?

Trumpas atsakymas yra tas, kad dauguma montuotojų yra erzina, nes jie arba nėra labai gerai parašyti, arba jie integruojami pernelyg giliai į "Windows", kad būtų galima kopijuoti sistemos failus ir paleisti viską, kas reikalinga be perkrovos.

Problema susilpnėja, nes "Windows" programos dažnai naudoja DLL( dinaminių saitų bibliotekos) failus, kurie dalijami tarp daugiau nei vienos programos. Tai puiki idėja, tačiau, kai kalbama apie programų įdiegimą ir pašalinimą, gali būti sunku persikrauti. Labai liūdnas dalykas yra tai, kad daugelis programų šiomis dienomis yra visiškai savarankiški ir nekeičia integruotų "Windows" DLL, bet jų diegėjai vis tiek persijungia.

Štai keletas atvejų, kai montuotojai gali būti erzinantys:

  • Jei įdiegta programa turi kopijuoti naujas failų versijas, kurias šiuo metu naudoja kita programa, ji arba ragins uždaryti visas kitas programas, arba ji busiš naujo paleiskite.
  • Jei yra ankstesnis diegimas arba "Windows Update", kurio laukiantys pakeitimai reikalauja perkrauti, kai kurie įrenginiai nepavyks atlikti ir prašys iš naujo paleisti.
  • Jei įdiegta programa turi papildomą priedą kitai programai, pavyzdžiui, naršyklės kontekstinio meniu arba naršyklės papildinį, jis paprašys iš naujo paleisti ar uždaryti kitas programas.
  • Kartais netinkamai parašyti montuotojai prašys iš naujo paleisti, nes jie nepradeda reikiamų paslaugų savarankiškai.

Pažiūrėkime keletą iš šių atvejų, kad galėtumėte visiškai suprasti, kas vyksta.

naudojimosi failai turi būti nukopijuoti iš naujo paleidus

Jei programinės įrangos diegimo programai reikia kopijuoti kai kuriuos failus, bet jie šiuo metu yra naudojami arba sisteminiai failai yra "Windows Update" atveju, jis naudos "Windows" laukimo funkciją, leidžiančiądiegimo programa, nurodydama, kad failo operacija įvyksta po naujo paleidimo ir prieš pradedant viską sistemoje "Windows".

Įdiegėjas parašys raktą į tokią buvimo vietą registre:

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

Jei gausite klaidą nurodydami, kad pirmiausia reikia paleisti iš naujo, galite atidaryti šiąraktą ir pamatysite visus failus, kuriuos reikia pakeisti kito paleidimo metu.

Jūs tikriausiai nenorite netinkamai elgtis su šio raktų turiniu, arba viskas greitai greitai taps keista. Yra keletas labai retų atvejų, kai šis raktas netyčia išvalomas net po kelerių paleidimų iš naujo ir gali tekti išvalyti raktų turinį, tačiau jūs turėtumėte vengti tai daryti, nebent esate labai tikras.

diegimas jau vyksta

Kai kurie diegėjai nebus paleisti, jei yra dabartinis diegimas, todėl jie patikrins šį mygtuką norėdami pamatyti, ar jau yra įdiegimas:

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

Aš neturiu šio vieno ekrano kopijos, bet jūs galite gauti idėją iš raktos pavadinimo.

"Windows Update" leidžia iš naujo paleisti "

" Jei gaunate pranešimą, kad negalite įdiegti programos, kol iš naujo paleisite kompiuterį, tai yra dėl to, kad "Windows Update" reikalauja priverstinio perkrovimo. Pavyzdžiui, jei gaunate šį klaidos pranešimą:

Tai yra todėl, kad jūs tikriausiai spustelėjote "Atšaukti", kai pamatėte šį dialogo langą:

Jei einate į registrą, pamatysite, kad šioje vietoje yra RebootRequired raktasregistras:

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

Yra dešinėje pusėje visa eilė GUID verčių, o jie nėra susiję su nieko registro, faktaskad jie yra, yra tai, kas paskatina šį pranešimą.

Techniškai galėtumėte eksportuoti raktų turinį, įdiegti programą, tada padėkite ją atgal, bet tai gali kažką ištrūkti, o perkrauta yra ne tai skausminga?

Taigi dabar jūs sužinojote šiek tiek daugiau apie tai, kodėl programų kūrėjai veikia taip, kaip jie veikia. Ar yra kažkas, ko norėtumėte žinoti? Paaiškinkite savo nepasitenkinimą komentaruose ir pamatysime, ar negalėsime jų apšviesti.