Τροποποίηση της Εξερεύνησης Αρχείων των Windows χρησιμοποιώντας Επεκτάσεις Shell

  • Οι επεκτάσεις του κελύφους επιτρέπουν την πλήρη προσαρμογή του Explorer, πέρα ​​από αυτά που προσφέρει το Μητρώο.
  • Τα Windows προσφέρουν πολλαπλούς ελεγκτές (μενού περιβάλλοντος, εικονίδια, μικρογραφίες, μεταδεδομένα και χώρο ονομάτων) για να προσαρμόσουν τη συμπεριφορά σε κάθε αρχείο.
  • Στα Windows 11, μπορείτε να καθαρίσετε και να επιταχύνετε την Εξερεύνηση τροποποιώντας τα κλειδιά μητρώου για τα μενού, το αριστερό παράθυρο και τα πρότυπα φακέλων.
  • Οι σύγχρονες εφαρμογές που συσκευάζονται με το MSIX ενσωματώνουν μενού περιβάλλοντος και διακομιστές COM μέσω επεκτάσεων που δηλώνονται στο μανιφέστο.

Προσαρμογή της Εξερεύνησης Αρχείων των Windows

Αν είστε από εκείνους τους ανθρώπους που απογοητεύονται με μενού γεμάτα επιλογές που δεν χρησιμοποιείτε, με κακώς υλοποιημένες ενσωματώσεις ή με αργούς χρόνους ανοίγματος φακέλων, τότε αυτό είναι για εσάς., ήρθες στο σωστό μέρος.

Στα Windows μπορείτε να τροποποιήσετε τη συμπεριφορά της Εξερεύνησης και του μενού περιβάλλοντος με διάφορους τρόπους (συμπεριλαμβανομένων Κόλπα για την Εξερεύνηση Αρχείων στα Windows 11): μέσω του Μητρώου, με κλασικές επεκτάσεις Shell με τη μορφή DLL, με σύγχρονα πακέτα MSIX, ακόμη και δημιουργώντας τις δικές σας επεκτάσεις σε .NET ή C++. Ας εξερευνήσουμε όλες αυτές τις δυνατότητες με ψυχραιμία, αλλά χωρίς να μακρηγορούμε.

Τι είναι οι επεκτάσεις Shell και γιατί το Registry δεν είναι επαρκές;

Το κέλυφος των Windows μπορεί να επεκταθεί με βασικό τρόπο μέσω καταχωρήσεων μητρώου και αρχείων .iniΑυτή η προσέγγιση είναι απλή και συνήθως επαρκής για την προσαρμογή εικονιδίων ανά τύπο αρχείου, την προσθήκη επιπλέον εντολών ή τη συσχέτιση επεκτάσεων. Ωστόσο, έχει έναν σημαντικό περιορισμό: όλα όσα ορίζετε ισχύουν σε επίπεδο τύπου αρχείου και όχι σε μεμονωμένα αρχεία.

Ένα τυπικό παράδειγμα είναι αυτό των προσαρμοσμένων εικονιδίων κατ' επέκταση: εάν στο Μητρώο αντιστοιχίσετε ένα εικονίδιο στο αρχείο .docx, όλα Τα αντίγραφα αυτού του τύπου αρχείου θα βλέπουν το ίδιο εικονίδιο, ακόμα κι αν προσπαθήσετε να τα διακρίνετε. Και υπάρχουν περιοχές του κελύφους, όπως το φύλλο ιδιοτήτων που εμφανίζεται όταν κάνετε δεξί κλικ και επιλέγετε ιδιότητεςτο οποίο απλά δεν μπορεί να τροποποιηθεί χρησιμοποιώντας μόνο κλειδιά μητρώου.

Για να ελέγξετε πραγματικά τον Explorer, πρέπει να προχωρήσετε ένα βήμα παραπέρα και να χρησιμοποιήσετε χειριστές επέκτασης κελύφους.Αυτά είναι στοιχεία COM (συνήθως αρχεία DLL) που καλεί το Shell κάθε φορά που εκτελεί μια συγκεκριμένη ενέργεια: εμφάνιση ενός εικονιδίου, άνοιγμα του μενού περιβάλλοντος, απόδοση μιας μικρογραφίας, εμφάνιση μιας συμβουλής εργαλείου κ.λπ. Ο Explorer υποβάλλει ερώτημα στο πρόγραμμα οδήγησης λίγο πριν εκτελέσει τη λειτουργία, δίνοντάς του την ευκαιρία να αλλάξει το αποτέλεσμα.

Ένα πολύ συνηθισμένο παράδειγμα είναι ο ελεγκτής μενού περιβάλλοντοςΕάν δημιουργήσετε ένα για έναν τύπο αρχείου, τα Windows θα το καλούν κάθε φορά που κάνετε δεξί κλικ σε οποιοδήποτε αρχείο αυτού του τύπου. Αυτό το στοιχείο μπορεί να προσθέσει διαφορετικά στοιχεία μενού ανάλογα με το συγκεκριμένο αρχείο, τον αριθμό των επιλεγμένων στοιχείων, τη διαδρομή κ.λπ., κάτι που είναι αδύνατο να επιτευχθεί με μια απλή συσχέτιση εντολών στο Μητρώο.

Μέσα σε αυτήν την οικογένεια ελεγκτών υπάρχουν δύο κύριες ομάδεςΑυτές είναι οι εντολές που συνδέονται με συγκεκριμένους τύπους αρχείων (και λειτουργούν "ανά αρχείο") και εκείνες που εκτελούν γενικές λειτουργίες Shell (χωρίς να εξαρτώνται από μια συγκεκριμένη επέκταση). Η λεπτομερής εξέτασή τους σας βοηθά να κατανοήσετε τους περιορισμούς τους.

Επεκτάσεις Shell στα Windows

Κύριοι ελεγκτές που σχετίζονται με τύπους αρχείων

Οι χειριστές που βασίζονται σε τύπους αρχείων σάς επιτρέπουν να προσαρμόσετε τη συμπεριφορά της Εξερεύνησης για συγκεκριμένες επεκτάσεις αρχείων.Λειτουργούν σε επίπεδο μεμονωμένου αρχείου, επομένως μπορείτε να προσαρμόσετε μενού, εικονίδια ή ιδιότητες ανάλογα με κάθε στοιχείο.

  • Ελεγκτής μενού περιβάλλοντος. Εκτελείται ακριβώς πριν από την εμφάνιση του μενού περιβάλλοντος ενός αρχείου. Σας επιτρέπει να προσθέσετε επιπλέον εντολές, να αναδιατάξετε στοιχεία και να εμφανίσετε επιλογές μόνο για συγκεκριμένα αρχεία ή καταστάσεις (για παράδειγμα, εάν έχουν επιλεγεί πολλά αρχεία, εάν πρόκειται για ειδικό φάκελο κ.λπ.).
  • Χειριστής Δεδομένων. Εφαρμόζεται σε λειτουργίες μεταφοράς και απόθεσης σε αντικείμενα Shell. Μπορεί να συμβάλει Πρόσθετες μορφές πρόχειρου έτσι ώστε ο προορισμός να έχει περισσότερες πληροφορίες (για παράδειγμα, μια εναλλακτική αναπαράσταση σε XML ή δυαδική μορφή).
  • Χειριστής πτώσης. Αυτή η εντολή καλείται όταν σύρετε ή αποθέτετε δεδομένα σε ένα συγκεκριμένο αρχείο. Επιτρέπει σε ένα αρχείο να λειτουργήσει ως προορισμός για μια λειτουργία μεταφοράς και απόθεσης, για παράδειγμα, αποθέτοντας πολλά αρχεία σε ένα αρχείο .zip ή σε μια βάση δεδομένων.
  • Χειριστής εικονιδίων. Καλείται πριν το Shell εμφανίσει ένα εικονίδιο αρχείου. Σας επιτρέπει να αντικαταστήσετε το γενικό εικονίδιο ενός τύπου αρχείου με ένα προσαρμοσμένο για κάθε αρχείο, κάτι που είναι πολύ χρήσιμο για στοιχεία όπως εικόνες, έγγραφα έργου, καταστάσεις συγχρονισμού κ.λπ., και για αυτό συνιστάται να ελέγξετε το οι καλύτερες επεκτάσεις για την Explorer.
  • Ελεγκτής φύλλου ιδιοτήτων. Ενεργοποιείται όταν πρόκειται να εμφανιστεί το παράθυρο διαλόγου ιδιότητες ενός αντικειμένου. Μπορείτε να το χρησιμοποιήσετε για να προσθέσετε επιπλέον καρτέλες ή να αντικαταστήσετε ορισμένες από τις υπάρχουσες, έτσι ώστε η εφαρμογή σας να εμφανίζει τις ρυθμίσεις της απευθείας στην καρτέλα ιδιοτήτων του αρχείου.
  • Χειριστής μικρογραφιών. Δημιουργεί την εικόνα που βλέπετε στην προβολή μικρογραφιών της Εξερεύνησης. Αυτό επιτρέπει σε ένα αρχείο βίντεο να εμφανίσει ένα αντιπροσωπευτικό καρέ ή μια ασυνήθιστη μορφή εικόνας για προεπισκόπηση χωρίς να βασίζεται σε εξωτερικές εφαρμογές.
  • Χειριστής συμβουλών πληροφοριών. Αυτό χρησιμοποιείται για τη δημιουργία της επεξήγησης εργαλείου που εμφανίζεται όταν τοποθετείτε το ποντίκι πάνω από ένα αρχείο. Εδώ μπορείτε να εμφανίσετε σχετικά μεταδεδομένα: διάρκεια ήχου, ανάλυση φωτογραφίας, κατάσταση εγγράφου κ.λπ.
  • Ελεγκτής μεταδεδομένων. Παρέχει πρόσβαση ανάγνωσης και εγγραφής στις ιδιότητες που είναι αποθηκευμένες σε ένα αρχείο. Χάρη σε αυτό, μπορείτε να επεκτείνετε την προβολή του λεπτομέρειες, πληροφορίες συμβουλών εργαλείου, ομαδοποιήσεις και πρόσθετες στήλες με προσαρμοσμένα μεταδεδομένα.

Άλλα προγράμματα οδήγησης Shell που δεν είναι συνδεδεμένα με έναν τύπο αρχείου

Εκτός από τα προγράμματα οδήγησης που εξαρτώνται από έναν τύπο αρχείουΥπάρχουν και άλλες που το Shell καλεί πριν από ορισμένες γενικές λειτουργίες του Explorer. Αυτές είναι που επιτρέπουν προσαρμογές υψηλότερου επιπέδου.

  • Ελεγκτής στήλης. Η προβολή ελέγχεται πριν από την εμφάνισή της. λεπτομέρειες από έναν φάκελο. Χρησιμοποιείται για την προσθήκη προσαρμοσμένων στηλών (για παράδειγμα, "Βαθμολογία", "Εσωτερικός Συντάκτης", "Κατάσταση Επικύρωσης") που συμπληρώνονται με πληροφορίες που υπολογίζονται από την επέκτασή σας.
  • Χειριστής γάντζου αντιγραφής. Αυτή η εντολή καλείται όταν το σύστημα πρόκειται να μετακινήσει, να αντιγράψει, να διαγράψει ή να μετονομάσει έναν φάκελο ή έναν εκτυπωτή. Σας επιτρέπει να εγκρίνετε ή να αποκλείσετε αυτήν τη λειτουργία, κάτι που είναι πολύ χρήσιμο σε λύσεις ασφαλείας, εταιρικές πολιτικές ή παρακολουθούμενους φακέλους.
  • Χειριστής μεταφοράς και απόθεσης με βάση τα συμφραζόμενα. Αυτό ονομάζεται όταν σύρετε ένα αρχείο με το δεξί κουμπί του ποντικιού. Μπορείτε να τροποποιήσετε το μενού περιβάλλοντος που εμφανίζεται όταν αφήσετε το κουμπί του ποντικιού, ενσωματώνοντας ειδικές ενέργειες όπως "Μετατροπή και μετακίνηση", "Μεταφόρτωση και διαγραφή αρχικού αρχείου" κ.λπ.
  • Χειριστής επικάλυψης εικονιδίων. Προσθέστε έναν μικρό δείκτη σε ένα εικονίδιο αρχείου ή φακέλου (για παράδειγμα, το πράσινο σημάδι επιλογής για συγχρονισμένα αρχεία ή ένα θαυμαστικό). Το κέλυφος το καλεί αυτό ακριβώς πριν ζωγραφίσει το εικονίδιο και ο κώδικάς σας αποφασίζει ποια επικάλυψη θα εφαρμόσει.
  • Ελεγκτής αναζήτησης. Χρησιμοποιείται για την εκκίνηση προσαρμοσμένων μηχανών αναζήτησης ενσωματωμένων στο ίδιο το κέλυφος. Με αυτό, μπορείτε να εμφανίσετε τη δική σας μηχανή αναζήτησης, προσβάσιμη από το μενού. μύηση ή από την Εξερεύνηση, η οποία λειτουργεί σε απομακρυσμένα δεδομένα ή μη τυποποιημένες δομές.

Μενού περιβάλλοντος και επεκτάσεις Εξερεύνησης

Επεκτάσεις χώρου ονομάτων: εικονικοί φάκελοι στην Εξερεύνηση

Η Εξερεύνηση των Windows δεν διδάσκει μόνο το παραδοσιακό σύστημα αρχείωνΣτην πραγματικότητα, αντικατοπτρίζει έναν πλήρη "χώρο ονομάτων" που περιλαμβάνει εικονικούς φακέλους όπως τον Κάδο Ανακύκλωσης, τις Βιβλιοθήκες ή τους Εκτυπωτές. Με μια επέκταση χώρου ονομάτων, μπορείτε να περικλείσετε οποιοδήποτε σύνολο δεδομένων και να το παρουσιάσετε σαν να ήταν ένας κανονικός φάκελος.

Όταν δημιουργείτε μια επέκταση χώρου ονομάτων, η Εξερεύνηση εμφανίζει τα δεδομένα σας ως ιεραρχία φακέλων και αρχείων.Ακόμα κι αν βρίσκονται στην πραγματικότητα σε μια βάση δεδομένων, σε μια απομακρυσμένη συσκευή ή είναι απλώς λογικοί σύνδεσμοι (όπως με τους εκτυπωτές), συμπεριφέρονται όπως οποιοσδήποτε άλλος φάκελος για τον χρήστη: μπορούν να αντιγράψουν, να μετακινήσουν, να διαγράψουν, να προβάλουν ιδιότητες, ακόμη και να εκτελέσουν αναζητήσεις.

Τεχνικά, κάθε φάκελος που είναι ορατός στην Εξερεύνηση αντιπροσωπεύεται από ένα αντικείμενο COM που ονομάζεται "αντικείμενο φακέλου"Όταν ο χρήστης αλληλεπιδρά με αυτόν τον φάκελο ή τα περιεχόμενά του, το Shell επικοινωνεί με αυτό το αντικείμενο μέσω τυπικών διεπαφών όπως Φάκελος IShellΤο αντικείμενο ανταποκρίνεται σε αιτήματα (στοιχεία λίστας, εικονίδια επιστροφής, ονόματα, χαρακτηριστικά...) και το Shell ενημερώνει τη γραφική διεπαφή.

Αυτό το μοντέλο είναι ιδιαίτερα χρήσιμο όταν τα δεδομένα σας δεν ταιριάζουν καλά στην τυπική δομή αρχείων και φακέλων.Σκεφτείτε μια βάση δεδομένων στην οποία θέλετε να πλοηγηθείτε σαν να ήταν φάκελοι, τα περιεχόμενα μιας ψηφιακής φωτογραφικής μηχανής χωρίς σύστημα αρχείων των Windows ή μια συλλογή από καθαρά λογικά αντικείμενα (για παράδειγμα, εργασίες εκτύπωσης σε ουρά).

Μια επέκταση namespace χωρίζεται γενικά σε δύο μέρηΈνας διαχειριστής δεδομένων (πώς και πού αποθηκεύετε τις πληροφορίες, ανάλογα με τις προτιμήσεις σας) και ένα επίπεδο διεπαφής με την Εξερεύνηση που συσκευάζει αυτά τα δεδομένα ως φακέλους και αρχεία. Αυτό το δεύτερο κομμάτι είναι αυτό που υλοποιεί τις διεπαφές COM έτσι ώστε το DefView (η προεπιλεγμένη προβολή φακέλων) και το υπόλοιπο Shell να γνωρίζουν πώς να εμφανίζουν και να χειρίζονται το περιεχόμενο.

Πώς αλληλεπιδρούν οι προβολές του Explorer με μια επέκταση

Το παράθυρο της Εξερεύνησης αποτελείται από διάφορες περιοχές: προβολή δέντρου, προβολή φακέλων, γραμμές μενού και εργαλείων και γραμμή κατάστασης.Όταν εισάγετε έναν φάκελο που διαχειρίζεται η επέκταση ονομάτων σας, ο κώδικάς σας μπορεί να τους επηρεάσει όλους, αν και σε διαφορετικό βαθμό.

Η προβολή δέντρου εμφανίζει μια προβολή υψηλού επιπέδου της ιεραρχίαςΦιλοξενεί ένα στοιχείο ελέγχου TreeView που εμφανίζει κάθε φάκελο στον χώρο ονομάτων και τη θέση του. Από εδώ, ο χρήστης μπορεί να επεκτείνει επίπεδα, να σύρει φακέλους, να χρησιμοποιήσει το μενού περιβάλλοντος ή να ανοίξει υποφακέλους. Η Εξερεύνηση επικοινωνεί κυρίως μέσω Φάκελος IShell, αίτημα χαρακτηριστικών, καταχώριση υποφακέλων, αίτημα εμφάνισης ονομάτων και εικονιδίων.

Η προβολή φακέλων (το δεξί πλαίσιο με τα αρχεία) είναι ακόμη πιο ευέλικτηΣε αντίθεση με την προβολή δέντρου, η Εξερεύνηση δεν ελέγχει άμεσα τα περιεχόμενά της. Απλώς δημιουργεί ένα θυγατρικό παράθυρο και το μεταβιβάζει στο αντικείμενο φακέλου σας. Αυτό το παράθυρο μπορεί να φιλοξενήσει μια κλασική προβολή λίστας, ένα στοιχείο ελέγχου προγράμματος περιήγησης ιστού με δυναμική HTML ή οτιδήποτε άλλο έχει νόημα για τα δεδομένα σας.

Η συνήθης πρακτική είναι η επαναχρησιμοποίηση του DefView χρησιμοποιώντας τη συνάρτηση SHCreateShellFolderViewΑυτό σας δίνει την τυπική προβολή με εικονίδια, λεπτομέρειες, ταξινόμηση, ομάδες κ.λπ. και σας επιτρέπει να εστιάσετε στην παροχή των δεδομένων. Ωστόσο, εάν χρειάζεστε μια πολύ συγκεκριμένη παρουσίαση, μπορείτε να δημιουργήσετε μια πλήρως προσαρμοσμένη προβολή.

Το μενού και οι γραμμές εργαλείων της Εξερεύνησης μπορούν να προσαρμοστούν από την επέκτασή σας.Το κέλυφος εκθέτει τη διεπαφή IShellBrowserΑυτό σας επιτρέπει να προσθέσετε ή να αφαιρέσετε κουμπιά και στοιχεία μενού ή να αντιδράσετε σε συγκεκριμένες εντολές. Όταν ο χρήστης κάνει κλικ σε ένα προσαρμοσμένο κουμπί, η Εξερεύνηση προωθεί το μήνυμα. WM_COMMAND στο παράθυρό σας, ώστε να μπορείτε να επεξεργαστείτε την ενέργεια.

Η γραμμή κατάστασης είναι ένα άλλο πολύ χρήσιμο κανάλιΑπό το ίδιο IShellBrowser Μπορείτε να ενημερώσετε το κείμενο ώστε να εμφανίζει πληροφορίες περιβάλλοντος σχετικά με το επιλεγμένο αντικείμενο, τον αριθμό των στοιχείων, σφάλματα στην επέκτασή σας κ.λπ., βελτιώνοντας έτσι την αίσθηση ενσωμάτωσης με το σύστημα.

Δημιουργήστε επεκτάσεις προγράμματος περιήγησης χρησιμοποιώντας μια βιβλιοθήκη κλάσεων .NET

Αν αναπτύσσετε σε .NET, υπάρχει η επιλογή χρήσης μιας βιβλιοθήκης με βασικές κλάσεις για να απλοποιήσετε τη δημιουργία πολλών από αυτές τις επεκτάσεις.Η ιδέα είναι πολύ απλή: δημιουργείτε ένα έργο βιβλιοθήκης κλάσεων, προσθέτετε μια κλάση COM και την κάνετε να κληρονομήσει από την βασική κλάση που αντιστοιχεί στον τύπο επέκτασης που θέλετε να υλοποιήσετε.

Για παράδειγμα, το BrowserHelperObjectBase διευκολύνει τη δημιουργία αντικειμένων βοήθειας προγράμματος περιήγησης για τον Internet Explorer.αντιστοίχιση μεθόδων, συμβάντων και ιδιοτήτων προγράμματος περιήγησης στον κώδικά σας. Εκθέτετε στοιχεία όπως η παρουσία του IE (ιδιότητα InternetExplorer), το παράθυρο στο οποίο εκτελείται το αντικείμενο (Τοποθεσίακαι χειρίζεστε γεγονότα όπως Σύνδεση u Κατά την Αποσύνδεση.

Το ContextMenuHandlerBase απλοποιεί τη δημιουργία μενού περιβάλλοντος για την ΕξερεύνησηΑπλά πρέπει να συμπληρώσεις τη συλλογή Στοιχεία Μενού με αντικείμενα MenuItem, όπως θα κάνατε σε μια φόρμα Windows Forms, και συνδέστε το συμβάν Πατήστε κάθε επιλογής. Το ακίνητο Αρχεία Σας δίνει τη λίστα με τα επιλεγμένα αρχεία και τη μέθοδο Επιλεγμένο στο μενού Χρησιμοποιείται για την ενημέρωση του κειμένου βοήθειας στη γραμμή κατάστασης.

Με το DropHandlerBase υλοποιείτε χειριστές μεταφοράς και απόθεσης που σχετίζονται με ένα αρχείοΈχετε ιδιότητες όπως Όνομα (ο προορισμός στον οποίο αποτίθενται τα αρχεία) και Αρχεία (οι συρμένοι), και μεθόδων όπως OnDragEnter, OnDragOver, OnDragLeave y OnDragDrop να αντιδράσει σε κάθε φάση της οπισθέλκουσας.

Το IconHandlerBase σάς επιτρέπει να επιστρέψετε το εικονίδιο που θα εμφανίσει η Εξερεύνηση. για κάθε αρχείο. Από OnGetIconLocation Εσείς αποφασίζετε πού βρίσκεται το εικονίδιο και μέσα Εικονίδιο OnExtract Επιστρέφετε τους συγκεκριμένους χειριστές εικονιδίων, έχοντας τη δυνατότητα να δημιουργήσετε μικρογραφίες ή προηγμένες αναπαραστάσεις.

Η εγγραφή αυτών των επεκτάσεων .NET γίνεται μέσω COM χρησιμοποιώντας το regasm.exeΟι βασικές κλάσεις περιλαμβάνουν μεθόδους που σημειώνονται με Συνάρτηση ComRegister y Συνάρτηση ComUnregister Αυτές οι κλάσεις είναι υπεύθυνες για τη δημιουργία ή τη διαγραφή των κατάλληλων καταχωρήσεων μητρώου κατά την καταχώρηση της συγκρότησης. Επιπλέον, πολλές από αυτές τις κλάσεις υποστηρίζουν το χαρακτηριστικό. Τύποι αρχείων επέκτασης για να υποδείξουν ποιους τύπους αρχείων επηρεάζουν (αυτή μπορεί να είναι μια λίστα διαχωρισμένη με κόμμα ή ο χαρακτήρας μπαλαντέρ * για όλα).

Αντικατάσταση ή τροποποίηση του κελύφους (explorer.exe) σε επίπεδο συστήματος

Ένας άλλος τρόπος για να "αγγίξετε" ριζικά το περιβάλλον των Windows είναι να αλλάξετε το προεπιλεγμένο κέλυφος.Δηλαδή, το πρόγραμμα που ξεκινά όταν συνδέεστε. Σε συστήματα ενός σκοπού (περίπτερα, βιομηχανικές συσκευές, τερματικά) μερικές φορές δεν θέλετε να εκτελείται ο Explorer, αλλά μάλλον μια μεμονωμένη εφαρμογή πλήρους οθόνης. Εάν χρειάζεστε άλλες επιλογές, ανατρέξτε στην ενότητα εναλλακτικές λύσεις για την Εξερεύνηση των Windows.

Σε περιβάλλοντα Windows Server και υπολογιστή-πελάτη, αυτή η συμπεριφορά ελέγχεται μέσω του Μητρώου., στο κλειδί HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\ShellΑντικαθιστώντας την τιμή με τη διαδρομή προς το εκτελέσιμο αρχείο σας, διασφαλίζετε ότι το πρόγραμμά σας φορτώνει αντί για τον κλασικό Explorer κατά τη σύνδεσή σας.

Η προσοχή εδώ είναι σαφής.Η απενεργοποίηση του explorer.exe ως κέλυφος αφήνει τον τελικό χρήστη χωρίς παράθυρα επιφάνειας εργασίας, γραμμής εργασιών ή φακέλων, επομένως είναι μια επιλογή που ταιριάζει καλύτερα σε κλειστά συστήματα. Επιπλέον, συνιστάται πάντα να έχετε μια εναλλακτική μέθοδο διαχείρισης και ανάκτησης (RDP, ασφαλής λειτουργία, GPO, κ.λπ.).

Προσαρμόστε την Εξερεύνηση αρχείων των Windows 11 από το Μητρώο

Πέρα από τις επεκτάσεις COM, πολλοί χρήστες θέλουν απλώς να αφαιρέσουν ενοχλητικές επιλογές από το μενού περιβάλλοντος ή να επαναφέρουν την κλασική συμπεριφορά.Στα Windows 11, ο επανασχεδιασμός του μενού δεξιού κλικ και η ενσωμάτωση λειτουργιών όπως το Copilot έχουν προκαλέσει αρκετή κριτική, ειδικά μεταξύ των προχωρημένων χρηστών.

Το πρώτο πράγμα που πρέπει να έχετε κατά νου είναι ότι το να πειράζετε το Μητρώο δεν είναι αστείο.Μια λανθασμένη αλλαγή μπορεί να αποσταθεροποιήσει το σύστημα, επομένως δημιουργήστε πρώτα ένα σημείο επαναφοράς ή ένα αντίγραφο ασφαλείας του Μητρώου. Και, φυσικά, φροντίστε να αντιγράψετε τις διαδρομές ακριβώς όπως φαίνονται.

Για να ανοίξετε τον Επεξεργαστή Μητρώου, απλώς πληκτρολογήστε "regedit" στο μενού Έναρξη. και ρίξτε το Επεξεργαστής μητρώουΑπό εκεί μπορείτε να πλοηγηθείτε σε κάθε κλάδο που θα αναφέρουμε και να δημιουργήσετε κλειδιά, τιμές συμβολοσειρών ή DWORD, όπως απαιτείται.

Αφαίρεση της εντολής «Ερώτηση για τον συνοδηγό» και άλλων καταχωρίσεων από το μενού περιβάλλοντος

Εάν έχετε εγκαταστήσει την εφαρμογή ή την ενσωμάτωση Copilot στα Windows 11Όταν κάνετε δεξί κλικ σε ένα αρχείο, πιθανότατα θα δείτε την επιλογή «Ρωτήστε τον συγκυβερνήτη»Αυτή η καταχώρηση καταλαμβάνει χώρο στο μενού και, αν δεν χρησιμοποιήσετε τη λειτουργία, απλώς σας εμποδίζει.

Για να το απενεργοποιήσετε από το Μητρώο, μεταβείτε στο Επεκτάσεις HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ShellΜέσα σε αυτόν τον κλάδο, δημιουργήστε ένα νέο κλειδί με το όνομα ΑποκλεισμένοιΜόλις μπείτε μέσα, προσθέστε ένα νέο αξία αλυσίδας του οποίου το όνομα θα είναι {CB3B0003-8088-4EDE-8769-8B354AB2FF8C} και αφήστε το περιεχόμενο κενό.

Το ίδιο κόλπο λειτουργεί για να διαγράψετε άλλες επιλογές όπως "Επεξεργασία με το Σημειωματάριο", το Paint ή το ClipchampΠάντα εργάζομαι κάτω από το υποκατάστημα Επεκτάσεις HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Shell και μέσα στο κλειδί ΑποκλεισμένοιΜπορείτε να δημιουργήσετε διαφορετικές τιμές συμβολοσειράς:

  • {CA6CC9F1-867A-481E-951E-A28C5E4F01EA} να κρυφτώ «Επεξεργασία με το Σημειωματάριο».
  • {8BCF599D-B158-450F-B4C2-430932F2AF2F} για να καταργήσετε την επιλογή Clipchamp.
  • {2430F218-B743-4FD6-97BF-5C76541B4AE9} για την κατάργηση της ενσωμάτωσης του Χρώμα.

Μόλις δημιουργηθούν αυτές οι τιμές, επανεκκινήστε την Εξερεύνηση ή τον υπολογιστή σας, ώστε τα Windows να φορτώσουν ξανά τις ρυθμίσεις.Για να επαναφέρετε οποιαδήποτε από αυτές, απλώς διαγράψτε την αντίστοιχη τιμή ή ολόκληρο το κλειδί. Αποκλεισμένοι αν θέλετε να ανακτήσετε όλα τα εισιτήρια.

Επαναφέρετε το κλασικό μενού περιβάλλοντος των Windows 10

Μία από τις πιο πολυσυζητημένες αλλαγές στα Windows 11 είναι το νέο, απλοποιημένο μενού περιβάλλοντος.Δεν είναι ότι είναι «κακό» από μόνο του, αλλά πολλοί έμπειροι χρήστες χάνουν το πλήρες μενού των Windows 10, με όλες τις επιλογές ορατές χωρίς να χρειάζεται να κάνουν κλικ στην επιλογή «Εμφάνιση περισσότερων επιλογών».

Για να επιστρέψετε στο κλασικό στυλ, μπορείτε να χρησιμοποιήσετε μια άλλη μικρή τροποποίηση στο Μητρώο.. Παω σε HKEY_CURRENT_USER\SOFTWARE\CLASSES\CLSID (Σημείωση: Μην το συγχέετε αυτό με τον κλάδο .cls) και δημιουργήστε ένα νέο κλειδί με το όνομα {86ca1aa0-34aa-4e8b-a509-50c905bae2a2}.

Μέσα σε αυτό το νεοδημιουργημένο κλειδί, προσθέστε ένα άλλο που ονομάζεται InprocServer32Στο δεξιό πλαίσιο, κάντε διπλό κλικ στην τιμή (Προκαθορισμένο) Και βεβαιωθείτε ότι το πεδίο δεδομένων είναι εντελώς κενό. Αποδεχτείτε τις αλλαγές και κλείστε τον επεξεργαστή.

Μετά την επανεκκίνηση του υπολογιστή σας, κάνοντας δεξί κλικ σε αρχεία ή φακέλους, θα εμφανιστεί το μενού περιβάλλοντος όπως ακριβώς εμφανιζόταν στα Windows 10.με όλες τις παραδοσιακές επιλογές άμεσα διαθέσιμες. Εάν αποφασίσετε να επιστρέψετε στην αρχική συμπεριφορά των Windows 11, απλώς διαγράψτε αυτό το κλειδί CLSID (και το δευτερεύον κλειδί του InprocServer32).

Βελτιώστε την απόδοση της Εξερεύνησης προσαρμόζοντας την προβολή φακέλων

Η Εξερεύνηση αρχείων μπορεί να γίνει αρκετά αργή εάν τα Windows προσπαθήσουν να εφαρμόσουν συγκεκριμένα πρότυπα φακέλων σε κάθε διαδρομή. (για παράδειγμα, «Εικόνες», «Βίντεο», «Έγγραφα» κ.λπ.) και πρέπει να αναλύσει το περιεχόμενο για να αποφασίσει ποια προβολή θα χρησιμοποιήσει. Αυτό είναι ιδιαίτερα αισθητό σε υπολογιστές με πολλά αρχεία ή μηχανικούς σκληρούς δίσκους.

Ένα κόλπο για να επιταχύνετε την πλοήγηση είναι να πείτε στο σύστημα να αντιμετωπίζει όλους τους φακέλους ως γενικούς.έτσι ώστε η ανάλυση να είναι πιο άμεση. Αυτό επιτυγχάνεται στο κλειδί HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\AllFolders\Shell.

Μέσα σε αυτό το κλειδί, δημιουργήστε μια τιμή συμβολοσειράς που ονομάζεται FolderType και αναθέτει ως περιεχόμενο Δεν διευκρινίζεταιΑποθηκεύστε τις αλλαγές και επανεκκινήστε τον υπολογιστή σας ή αποσυνδεθείτε και συνδεθείτε ξανά.

Όταν ανοίξετε ξανά την Εξερεύνηση, θα παρατηρήσετε ότι η εναλλαγή φακέλων είναι πιο ομαλή.Ειδικά αν εργάζεστε συχνά με αρχεία που περιέχουν χιλιάδες αρχεία ή μια μεγάλη ποικιλία τύπων αρχείων. Δεν είναι μαγικό, αλλά βοηθάει να γλιτώσετε δευτερόλεπτα πού και πού. Αυτή η ρύθμιση είναι ιδιαίτερα χρήσιμη αν Ο εξερευνητής είναι αργός..

Ενσωμάτωση του Explorer με εφαρμογές που βασίζονται στο MSIX

Μέχρι στιγμής έχουμε μιλήσει κυρίως για επεκτάσεις που έχουν καταχωρηθεί απευθείας στο ΜητρώοΑυτή είναι η κλασική προσέγγιση που χρησιμοποιείται από τα προγράμματα εγκατάστασης MSI ή ClickOnce. Αυτές οι τεχνολογίες δημιουργούν κλειδιά σε διαφορετικούς κλάδους του Μητρώου για την καταχώριση μενού περιβάλλοντος, συσχετίσεων αρχείων και ούτω καθεξής.

Με εφαρμογές που βασίζονται σε MSIX, η εικόνα αλλάζειΤο Μητρώο έχει εικονικοποιηθεί για την εφαρμογή και δεν μπορείτε πλέον να βασίζεστε σε αυτό για την καταχώριση επεκτάσεων του Explorer. Αντίθετα, πρέπει να χρησιμοποιήσετε το επεκτάσεις πακέτων ορίζεται στο μανιφέστο του πακέτου (Package.appxmanifest), όπου δηλώνετε συσχετίσεις τύπων αρχείων, ρήματα μενού περιβάλλοντος και διακομιστές COM.

Ο απλούστερος τρόπος ενσωμάτωσης με την Explorer στο MSIX είναι μέσω της επέκτασης windows.fileTypeAssociationΔηλώνετε τους τύπους αρχείων που υποστηρίζετε (για παράδειγμα, .foo), ποιες παραμέτρους λαμβάνει το εκτελέσιμο αρχείο σας όταν ο χρήστης ανοίγει ένα από αυτά τα αρχεία και ποια πρόσθετα ρήματα θα εμφανιστούν στο μενού περιβάλλοντος (για παράδειγμα, "Αλλαγή μεγέθους αρχείου").

Το στοιχείο FileTypeAssociation ορίζει το λογικό όνομα της συσχέτισης και τους τύπους που υποστηρίζει.Στην ιδιότητά του Παράμετροι Συνήθως πηγαίνει τουλάχιστον %1το οποίο αντιπροσωπεύει τη διαδρομή προς το επιλεγμένο αρχείο. Μέσα, το στοιχείο Υποστηριζόμενοι Τύποι Αρχείων Παραθέστε τις συγκεκριμένες επεκτάσεις (.foo, .bar, κ.λπ.) και Υποστηριζόμενα ρήματα Περιέχει τα ρήματα που θα προστεθούν στο μενού περιβάλλοντος με τις δικές τους παραμέτρους.

Υπάρχουν δύο σημαντικοί περιορισμοί σε αυτό το μοντέλοΜπορείτε να εμφανίσετε ρήματα μόνο για τύπους αρχείων που η εφαρμογή σας έχει ήδη συσχετίσει με αυτήν και θα εμφανίζονται μόνο εάν η εφαρμογή σας είναι η προεπιλεγμένη για αυτόν τον τύπο. Επιπλέον, το ρήμα μπορεί να εκκινήσει μόνο το κύριο εκτελέσιμο αρχείο της εφαρμογής (αν και με διαφορετικές παραμέτρους) και όχι ένα άλλο αυθαίρετο EXE.

Προηγμένες επεκτάσεις Shell COM σε πακέτα MSIX

Εάν χρειάζεται να προχωρήσετε περισσότερο (να ελέγχετε γενικούς φακέλους, να εκκινείτε άλλες εργασίες ή να μην ανοίγετε την κύρια εφαρμογή κάθε φορά)Η επιλογή είναι να δημιουργήσετε μια κλασική επέκταση Shell COM (DLL) και να την καταχωρήσετε στο μανιφέστο MSIX, αντί να χρησιμοποιήσετε το μητρώο του συστήματος.

Μια επέκταση Shell COM είναι ουσιαστικά ένα αρχείο DLL που εκθέτει μία ή περισσότερες κλάσεις COM με ένα μοναδικό CLSID.Τα Windows φορτώνουν αυτό το αρχείο DLL όταν η Εξερεύνηση χρειάζεται να εμφανίσει το μενού περιβάλλοντος, εικονίδια, μικρογραφίες κ.λπ. και καλεί μεθόδους όπως ΛήψηΤίτλου, Λήψηεικονιδίου, Λήψη εργαλείου συμβουλής o επικαλούνται (στην περίπτωση εντολών μενού).

Η τυπική υλοποίηση γίνεται σε C++ για λόγους απόδοσης και κατανάλωσης μνήμης.Ένα κλασικό παράδειγμα είναι ένα έργο παρόμοιο με το "ExplorerCommandVerb", όπου η κλάση CExplorerCommandVerb Η εντολή μενού υλοποιείται. Η μέθοδος επικαλούνται Είναι αυτό που εκτελείται όταν ο χρήστης κάνει κλικ στην καταχώρισή σας στο μενού περιβάλλοντος και από εκεί μπορείτε να κάνετε σχεδόν οτιδήποτε θέλετε: να εμφανίσετε παράθυρα διαλόγου, να ξεκινήσετε άλλες διεργασίες, να επεξεργαστείτε διάφορα στοιχεία κ.λπ.

Για να καταχωρήσετε τον διακομιστή COM σε ένα πακέτο MSIX, χρησιμοποιείτε τον χώρο ονομάτων com στο μανιφέστο.Στον κόμβο com:Κατηγορία επέκτασης=»windows.comServer» Δηλώνετε τον διακομιστή COM, τον τύπο διακομιστή (για παράδειγμα, SurrogateServer) και μέσα σε ένα στοιχείο com:Κλάση όπου υποδεικνύετε το Id (το CLSID σας) και το μονοπάτι (το DLL που περιέχει την υλοποίηση).

Η ενσωμάτωση με την εξερεύνηση αρχείων γίνεται αργότερα χρησιμοποιώντας την επέκταση windows.fileExplorerContextMenus, δηλωμένο μέσα σε έναν κόμβο desktop4:ΕπέκτασηΟρίζει ένα ή περισσότερα επιφάνεια εργασίας5:Τύπος αντικειμένου (για παράδειγμα, Τηλεφωνικός κατάλογος, * ή μια συγκεκριμένη επέκταση) και, εντός, στοιχείων desktop5:Ρήμα που αναφέρουν το CLSID σας.

Το αρχείο DLL πρέπει να συσκευαστεί μέσα στο MSIX και να αντιγραφεί μαζί με την εφαρμογή.Εάν χρησιμοποιείτε ένα Έργο Πακέτου Εφαρμογών των Windows, ο ευκολότερος τρόπος είναι να προσθέσετε το DLL στο έργο και να το επισημάνετε ώστε να αντιγράφεται πάντα στον κατάλογο εξόδου ή να αυτοματοποιήσετε την αντιγραφή με ένα συμβάν μετά τη μεταγλώττιση στο έργο C++.

Μετά την εγκατάσταση του πακέτου MSIX, ο Explorer δεν θα φορτώσει τη νέα επέκταση μέχρι να επανεκκινηθεί.Μπορείτε να επανεκκινήσετε ολόκληρο τον υπολογιστή ή να τερματίσετε τη διαδικασία. explorer.exe Ανοίξτε τη Διαχείριση Εργασιών και επανεκκινήστε τον υπολογιστή. Από εκείνο το σημείο και μετά, η νέα καταχώρηση στο μενού περιβάλλοντος θα εμφανιστεί εκεί που την καθορίσατε.

Συνολικά, το οικοσύστημα των επεκτάσεων Shell, των τροποποιήσεων μητρώου και των μανιφέστων MSIX σάς επιτρέπει να πάτε την Εξερεύνηση αρχείων σε άλλο επίπεδο.Είτε πρόκειται για να καθαρίσετε τα ακατάστατα μενού, να επιταχύνετε την πλοήγηση, να ενσωματώσετε τις δικές σας εφαρμογές ή ακόμα και να μετατρέψετε σύνθετες δομές δεδομένων σε φιλικούς προς το χρήστη "φακέλους", με λίγη προσοχή κατά την τροποποίηση του Μητρώου και καλό σχεδιασμό των επεκτάσεων COM, μπορείτε να έχετε έναν Explorer τέλεια προσαρμοσμένο στις ανάγκες σας χωρίς να θυσιάσετε τη σταθερότητα του συστήματος.

10 το λογότυπο των Windows
σχετικό άρθρο:
Οι καλύτεροι εξερευνητές αρχείων για τα Windows 10