Συνέβη σε όλους κάποια στιγμή - πηγαίνετε να εγκαταστήσετε μια νέα εφαρμογή και τα Windows σας λένε να κάνετε επανεκκίνηση πρώτα. Ή κάντε επανεκκίνηση μετά. Ή σας ζητά να κλείσετε πρώτα κάθε άλλη εφαρμογή. Γιατί το κάνει αυτό;
Στο σημερινό μάθημα geek θα εξηγήσουμε ακριβώς γιατί τα Windows μπορεί να είναι τόσο ενοχλητικά με όλη αυτή την επανεκκίνηση και ελπίζουμε να σας δώσουμε μια καλύτερη προοπτική για το γιατί τα πράγματα λειτουργούν έτσι.
Γιατί λοιπόν ενοχλούν οι εγκαταστάτες;
Η σύντομη απάντηση είναι ότι οι περισσότεροι εγκαταστάτες είναι ενοχλητικοί επειδή είτε δεν είναι γραμμένοι πολύ καλά είτε ενσωματώνονται πολύ βαθιά στα Windows για να μπορούν να αντιγράψουν αρχεία συστήματος και να ξεκινήσουν όλα τα απαραίτητα χωρίς επανεκκίνηση.
Το πρόβλημα επιδεινώνεται επειδή οι εφαρμογές των Windows χρησιμοποιούν συχνά αρχεία DLL (βιβλιοθήκη δυναμικών συνδέσμων) που είναι κοινόχρηστα σε περισσότερες από μία εφαρμογές. Είναι μια ωραία ιδέα, αλλά όταν πρόκειται για την εγκατάσταση και την απεγκατάσταση εφαρμογών μπορεί να είναι ενοχλητικό να χρειαστεί να επανεκκινήσετε. Το πραγματικά λυπηρό είναι ότι πολλές εφαρμογές αυτές τις μέρες είναι εντελώς αυτόνομες και δεν αντικαθιστούν τα ενσωματωμένα DLL των Windows, αλλά οι εγκαταστάτες τους εξακολουθούν να σας κάνουν να κάνετε επανεκκίνηση.
Ακολουθούν μερικές περιπτώσεις όπου οι εγκαταστάτες μπορεί να είναι ενοχλητικοί:
- Εάν η εφαρμογή που εγκαθιστάτε πρέπει να αντιγράψει νέες εκδόσεις αρχείων που χρησιμοποιούνται αυτήν τη στιγμή από άλλη εφαρμογή, θα σας ζητήσει είτε να κλείσετε όλες τις άλλες εφαρμογές είτε θα σας κάνει να κάνετε επανεκκίνηση.
- Εάν υπάρχει προηγούμενη εγκατάσταση ή Windows Update που έχει εκκρεμεί αλλαγές που απαιτούν επανεκκίνηση, ορισμένες εγκαταστάσεις θα αποτύχουν και θα σας ζητήσουν να κάνετε επανεκκίνηση πρώτα.
- Εάν η εφαρμογή που εγκαθιστάτε έχει μια προσθήκη για μια άλλη εφαρμογή, όπως μια προσθήκη μενού περιβάλλοντος Explorer ή μια προσθήκη προγράμματος περιήγησης, θα σας ζητήσει να κάνετε επανεκκίνηση ή να κλείσετε τις άλλες εφαρμογές.
- Μερικές φορές τα κακώς γραμμένα προγράμματα εγκατάστασης θα σας ζητήσουν να κάνετε επανεκκίνηση επειδή δεν ξεκινούν τις απαιτούμενες υπηρεσίες μόνοι τους
Ας ρίξουμε μια πιο προσεκτική ματιά σε μερικές από αυτές τις περιπτώσεις, ώστε να μπορείτε να καταλάβετε πλήρως τι συμβαίνει.
Τα αρχεία κατά τη χρήση πρέπει να αντιγραφούν κατά την επανεκκίνηση
Εάν το πρόγραμμα εγκατάστασης της εφαρμογής πρέπει να αντιγράψει ορισμένα αρχεία, αλλά αυτήν τη στιγμή χρησιμοποιούνται, ή είναι αρχεία συστήματος στην περίπτωση του Windows Update, θα χρησιμοποιήσει μια λειτουργία σε εκκρεμότητα στα Windows που επιτρέπει σε ένα πρόγραμμα εγκατάστασης να καθορίσει ότι μια λειτουργία αρχείου συμβαίνει μετά την επανεκκίνηση, και πριν ξεκινήσουν όλα τα Windows.
Το πρόγραμμα εγκατάστασης θα γράψει ένα κλειδί για την ακόλουθη θέση στο μητρώο:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager
\ PendingFileRenameOperations
Εάν έχετε λάβει ένα σφάλμα που λέει ότι πρέπει να κάνετε επανεκκίνηση πρώτα, μπορείτε να ανοίξετε αυτό το κλειδί και θα δείτε όλα τα αρχεία που πρέπει να αντικατασταθούν στην επόμενη επανεκκίνηση.
Πιθανότατα δεν θέλετε να χάσετε το περιεχόμενο αυτού του κλειδιού, διαφορετικά τα πράγματα θα αρχίσουν γρήγορα να γίνονται παράξενα. Υπάρχουν μερικές πολύ σπάνιες περιπτώσεις όπου αυτό το κλειδί δεν αδειάζεται ακόμη και μετά από πολλές επανεκκινήσεις και ίσως χρειαστεί να διαγράψετε τα περιεχόμενα του κλειδιού - αλλά μάλλον θα πρέπει να αποφύγετε να το κάνετε αυτό εκτός εάν είστε πολύ σίγουροι.
Η εγκατάσταση βρίσκεται σε εξέλιξη
Ορισμένοι εγκαταστάτες δεν θα ξεκινήσουν εάν υπάρχει μια τρέχουσα εγκατάσταση σε εξέλιξη, επομένως θα ελέγξουν το ακόλουθο κλειδί για να δουν εάν υπάρχει ήδη μια εγκατάσταση:
HKEY_LOCAL_MACHINE \ Λογισμικό \ Microsoft \ Windows \ CurrentVersion \ Installer \ InProgress
Δεν έχω στιγμιότυπο οθόνης για αυτό, αλλά μπορείτε να πάρετε την ιδέα από το όνομα του κλειδιού.
Το Windows Update σάς κάνει να κάνετε επανεκκίνηση
Εάν λαμβάνετε ένα μήνυμα που λέει ότι δεν μπορείτε να εγκαταστήσετε μια εφαρμογή έως ότου κάνετε επανεκκίνηση του υπολογιστή σας, αυτό οφείλεται στο ότι το Windows Update απαιτεί αναγκαστική επανεκκίνηση. Έτσι, για παράδειγμα, εάν λαμβάνετε αυτό το μήνυμα σφάλματος:
Επειδή πιθανώς κάνατε κλικ στο Postpone όταν εμφανιζόταν αυτό το παράθυρο διαλόγου:
Εάν κατευθυνθείτε στο μητρώο, θα δείτε ότι υπάρχει ένα πλήκτρο RebootRequired σε αυτήν την τοποθεσία στο μητρώο:
HKEY_LOCAL_MACHINE \ ΛΟΓΙΣΜΙΚΟ \ Microsoft \ Windows \
ΣυρρεντΒέρσιον\ΒιντόβσΎπτατε\Αυτό Υπδάτε
Υπάρχει ένα σωρό τιμές GUID στη δεξιά πλευρά και ενώ δεν σχετίζονται με τίποτα στο μητρώο, το γεγονός ότι είναι εκεί είναι αυτό που ενεργοποιεί αυτό το μήνυμα.
Τεχνικά, θα μπορούσατε πιθανώς να εξαγάγετε τα περιεχόμενα του κλειδιού, να εγκαταστήσετε την εφαρμογή και, στη συνέχεια, να τα επαναφέρετε - αλλά θα μπορούσε να σπάσει κάτι και η επανεκκίνηση δεν είναι τόσο επώδυνη;
Τώρα, μάθατε λίγο περισσότερα για το γιατί λειτουργούν οι εγκαταστάτες εφαρμογών με τον ίδιο τρόπο. Υπάρχει κάτι άλλο που θα θέλατε να γνωρίζετε; Εξηγήστε τις απογοητεύσεις σας στα σχόλια και θα δούμε αν δεν μπορούμε να τους ρίξουμε φως.