Dogodilo se se svatko u nekom trenutku - idete instalirati novu aplikaciju, a Windows vam kaže da se najprije ponovno podignete. Ili ponovno pokrenite nakon. Ili vas zatraži da najprije zatvoriš svaku drugu aplikaciju. Zašto to radi?
U današnjoj lekciji ćemo objasniti upravo zašto Windows može biti toliko iritantan sa svim tim ponovno podizanjem sustava, i nadamo se da će vam dati bolju perspektivu zašto stvari rade na taj način.
Kratki odgovor je da je većina instalatera neugodno jer nisu dobro napisana ili se previše duboko integriraju u Windows da bi mogli kopirati datoteke sustava i pokrenuti sve što je potrebno bez ponovnog pokretanja sustava.
Problem je složen jer Windows aplikacije često koriste DLL datoteke (dinamički poveznik) koje se dijele između više aplikacija. To je lijepa ideja, ali kada je u pitanju instaliranje i deinstaliranje aplikacija može biti iritantno da je potrebno ponovno podizanje sustava. Stvarno je tužna činjenica da su mnoge aplikacije ovih dana potpuno potpuno samostalne i ne mijenjaju ugrađene Windows DLL datoteke, ali njihovi instalacijski operateri i dalje vas ponovno podižu.
Evo nekoliko slučajeva u kojima instalatori mogu biti neugodno:
Pogledajmo neke od tih slučajeva pa možete u potpunosti razumjeti što se događa.
Ako program za instalaciju aplikacije treba kopirati neke datoteke, ali se trenutačno upotrebljavaju ili su datoteke sustava u slučaju Windows Update, koristit će značajku Pending u sustavu Windows koja omogućuje instalateru da određuje da se operacija datoteke dogodi nakon ponovnog pokretanja, i prije svega što je pokrenut sustav Windows.
Instalater će napisati ključ na sljedećem mjestu u registru:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager
\ PendingFileRenameOperations
Ako ste primili pogrešku u kojoj je rekli da morate ponovno pokrenuti sustav, možete otvoriti taj ključ i vidjet ćete sve datoteke koje treba zamijeniti na sljedećem ponovnom pokretanju.
Vjerojatno ne želite nered sa sadržajem ovog ključa, inače će se stvari brzo početi postati čudne. Postoje neki vrlo rijetki slučajevi kada se taj ključ ne isprazni čak i nakon višestrukih ponovnih pokretanja, a možda ćete morati brisati sadržaj ključa - ali vjerojatno biste to trebali izbjegavati, osim ako niste sigurni.
Neki se instalacijski programi neće pokrenuti ako je u tijeku aktualna instalacija pa će provjeriti sljedeći ključ da biste vidjeli postoji li već instalacija:
HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ Installer \ pogonu
Nemam snimku zaslona za ovaj, ali ideju možete dobiti od naziva ključa.
Ako primate poruku da ne možete instalirati aplikaciju dok ponovno ne pokrenete računalo, to je zbog ažuriranja sustava Windows koja zahtijeva prisilno ponovno podizanje sustava. Na primjer, ako primite ovu poruku o pogrešci:
Zato što ste vjerojatno kliknuli "Odgodi" kada se ovaj skočni prozor vidio:
Ako krenete u registar, vidjet ćete da postoji ključ RebootRequired na ovoj lokaciji u registru:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \
CurrentVersion \ WindowsUpdate \ Auto Update
S desne strane postoji čitava hrpa GUID vrijednosti, a dok se ne odnose na bilo što u registru, činjenica da su tu postoji ono što pokreće tu poruku.
Tehnički vjerojatno biste mogli izvesti sadržaj ključa, instalirati aplikaciju, a zatim ih vratiti - ali može nešto slomiti, a ponovno podizanje sustava nije tako bolno?
Sada ste naučili još malo o tome zašto aplikacijski programeri rade na način na koji rade. Ima li još nešto što biste željeli znati? Objasnite svoje frustracije u komentarima, i vidjet ćemo hoćemo li im nešto rasvijetliti.