Damit der Explorer leichte Menüs serviert

Die Windows-Entwickler bei Microsoft meinten es sicherlich nur gut, als sie sich Mittel und Wege ausdachten, den Explorer möglichst leistungsfähig zu gestalten. Statt ihn als abgeschlossenes Stück Software zu konzipieren, öffneten sie ihn den Drittherstellern für Erweiterungen. Eine Methode erlaubt es denen, die Kontextmenüs mit eigenen Befehlen zu bestücken. Klickt man mit der rechten Maustaste auf einen Ordner oder eine Datei, erscheinen dort die Standardbefehle zum Öffnen, Kopieren, Drucken und Umbennnen. Es erscheinen dort aber auch Dinge wie Ausgewählte Dateien mit Antivir überprüfen, In Adobe PDF konvertieren und per Mail versenden, Edit with Notepad++, Zu [Archiv].rar hinzufügen, Erase seucre more, Adobe Drive CS4, und so weiter, und so fort. Das Menü wird mit den Jahren immer länger und unübersichtlicher. Und es kommt vor, dass nach der Deinstallation eines Programms der nun nutzlose Menüeintrag verbleibt.

131022-vorher.jpg
Vorher – nachher: Der unerwünschte Eintrag von Adobe wurde eliminiert.

Die Windows-Entwickler haben die Methoden zur Erweiterung des Explorer eingebaut, aber dem Anwender keine Möglichkeit an die Hand gebeben, die Befehlsflut einzudämmen oder ihm zu erlauben, nicht genehme Einträge zu vermeiden. Das ist, so scheint mir, ein generelles Problem von Microsofts Betriebssystem. So offen, wie es ist, kann eine Drittsoftware es komplett auf den Kopf stellen. Und der Anwender, dem das nicht passt, steht mit abgesägten Hosen da, weil keiner ihm sagt, wie er das nun rückgängig macht. Das Kind mit dem Bad ausgeschütten und die Software wieder deinstallieren, das will der User vermutlich trotz allem Ärger nicht. Und selbst wenn er es täte ist es eben so, dass die Änderungen an den Benutzerschnittstellen bei der Entfernung eines Programms einfach vergessen gehen. Das ist mit ein Grund, weshalb Windows bei zunehmendem Gebrauch langsam und fehleranfällig wird. Diese Probleme sind ein gutes Argument dafür, Betriebssysteme stärker zu isolieren. Etwa so, wie Apple das bei iOS tut. Auch wenn ich als Power-User das bedauere – es ist förderlich für die Stabilität und Konsistenz.

Aufräumen mit ShellExView
Was nun das Kontextmenü angeht, hat sich zum Aufräumen das Programm ShellExView (kostenlos von Nir Sofer) bewährt. Das Programm ist ein Shell Extensions Manager. Die Shell, das ist die Arbeitsoberfläche von Windows, die weitgehend vom Windows-Explorer zur Verfügung gestellt wird – dieses Programm ist beispielsweise auch für die Anzeige des Windows-Desktops zuständig. ShellExView zeigt in einer langen Liste alle installierten Erweiterungen. Per Rechtsklick auf einen Eintrag kann man ihn deaktivieren – was man nun aber nicht kopflos tun sollte. Es versteht sich von selbst, dass eine gezielte Herangehensweise empfehlenswert ist.

Da ist es sinnvoll, die Liste alphabetisch nach Lieferant zu sortieren: So stehen die vielen Einträge von Microsoft beieinander. Diesen sollte man mit Vorsicht begegnen. Es heisst zwar nicht, dass Microsoft nicht selbst an überflüssigen Einträgen schuld ist. Aber so lange man nicht gezielt einen solchen Eintrag entfernen will, lässt man sie besser in Ruhe.

Die Einträge von Anbietern wie Adobe, Winzip, Nvida, Dropbox o.ä. sind rosa hinterlegt. Sie kann man sich nun vorknöpfen. Anhand der Art sieht man, worum es sich handelt. Die erwähnten Kontextmenüeinträge werden entsprechend mit Kontextmenü ausgezeichnet. Es gibt aber noch viele weitere:

  • Shell-Verzeichnisse erweitern den Funktionsumfang des Explorers. Microsoft klinkt die Suchfunktion, den Papierkorb, die Systemsteuerung, etc. auf diese Weise in die Shell ein.
  • Vorschau-Deskriptoren zeigen im Explorer bei bestimmten Dokumenttypen Miniaturansichten und Vorschaubildchen an.
  • Symbol-Deskriptoren statten Icons mit zusätzlichen Möglichkeiten aus
  • Symbolüberlagerungs-Deskriptoren können Icons mit einem Statushinweis ausstatten. Dropbox kann so z.B. anzeigen, ob eine Datei synchronisiert ist oder hochgeladen wird.
  • Metadaten: Mit diesen Erweiterungen kann das System beschreibende Informationen zu einzelnen Dateitypen anzeigen.
  • Die Quickinfo-Deskriptoren ermöglichen es, dass beim Positionieren des Mauszeigers auf einer Datei sinnvolle Angaben gemacht werden.
  • Eigenschaftenblatt zeigt im Eigenschaften-Dialog pro Dateityp zweckmässige Hinweise an.
  • Drag&Drop-Deskriptoren/Drop-Deskriptorer erweitern die Funktionalität von Mausoperationen.
  • Kopieren-Hooks ermöglichen es, Kopier- und Verschiebevorgänge mit einem Drittprogramm abzuwickeln.
  • Browserhilfsobjekte sind Erweiterungen von Microsofts Internet Explorer.

ShellExView gibt uns somit auch einen kleinen Einblick in die Funktionsweise des Explorers und von Windows.

Hat man nun beispielsweise einen Kontextmenüeintrag wie das Acrobat Elements Context Menu entdeckt, den man deaktivieren möchte, sollte man, bevor man ihn wirklich abschaltet, noch kurz abchecken. Dazu klickt man ihn mit der rechten Maustaste an, wählt Erweiterungsnamen mit Google suchen (ev. Dateinamen mit Google suchen) aus dem Kontextmenü und klärt ab, ob es sich nicht vielleicht doch um eine kritische Komponente handelt. Sollte das nicht der Fall sein, deaktiviert man den Eintrag wiederum mit einem Rechtsklick und dem Befehl Ausgewählte Elemente deaktivieren. ShellExView kann deaktivierte Elemente auch wieder reaktivieren.

Die Änderung wird erst nach einem Neustart (des Rechners oder des Explorers) sichtbar.

Auch zur Fehlerbehebung geeignet
Fazit: ShellExView ist ein nützliches Programm, um das Kontextmenü aufzuräumen und den Explorer von Ballast zu befreien. Es kann auch zur ernsthaften Fehlerbehebung eingesetzt werden, indem es möglich ist, problematische Erweiterungen von Drittherstellern aus dem Verkehr zu ziehen. Da das ein Risiko beinhaltet, sollte man das nicht ohne Not tun. Aber wenn unerklärliche Abstürze des Explorers auftreten oder Funktions- oder Leistungsprobleme vorhanden sind, dann ist es durchaus empfehlenswert, mit ShellExView etwas tiefer zu gehen – natürlich überlegt und sorgfältig. Die Änderungen zu dokumentieren, ist empfehlenswert.

131022-shellexview.png
Dieser Eintrag ist zu deaktivieren, um den unerwünschten Eintrag aus dem Menü zu kippen.

Ein Exkurs für Registry-Freaks
Die Shell-Erweiterungen stecken – wen wundert es? – in der Registry. Das heisst, dass man für eine Aufräumaktion auch einfach den Registrierungseditor heranziehen kann. Die für das Kontextmenü zuständigen Schlüssel sind im Ast Hkey_Classes_Root zu finden:

  • Kontextmenü-Einträge, die für alle Dateien gelten, finden sich im Schlüssel Hkey_Classes_Root\*.
  • Die Kontextmenü-Einträge, die beim Klick auf einen Ordner erscheinen, stecken im Schlüssel Hkey_Classes_Root\Folder.
  • Bei Hkey_Classes_Root\AllFilesystemObjects gibt es die allgemeingültigen Schlüssel (für Dateien und Ordner).

Kontextmenü-Einträge eines bestimmten Dateityps sind am schwersten aufzuspüren. Möchte man das Kontextmenü anpassen, das beim Klick auf einen MP3-Titel erscheint, sucht man als erstes den Eintrag zu der passenden Dateierweiterung, also Hkey_Classes_Root\.mp3. Nun sieht man sich in der rechten Hälfte des Registrierungs-Editors an, was bei diesem Schlüssel unter (Standard) eingetragen ist. Steht da beispielsweise mp3file, sind die Kontextmenü-Einträge im Schlüssel Hkey_Classes_Root\mp3file zu finden.

Hat man den passenden Schlüssel aufgestöbert, öffnet man den Unterschlüssel shellex, und dann ContextMenuHandlers; also beispielsweise Hkey_Classes_Root\mp3file\shellex\ContextMenuHandlers. Änderungen an dieser Stelle erfolgen auf eigene Gefahr – wie man Registry-Informationen sichert und wiederherstellt, steht übrigens hier.

131022-regedit.png
Wer mag kann auch an der Registry fummeln.

Nun ist man so weit, einen Kontextmenü-Eintrag deaktivieren zu können. Um beispielsweise den Eintrag Zur Brennliste hinzufügen abzuschalten, der beim Klick auf eine MP3-Datei erscheint, öffnet man den Schlüssel, der nach menschlichem Ermessen für die entsprechende Funktion verantwortlich ist; nämlich WMPBurnAudioCD (der komplette Schlüsselname ist Hkey_Classes_Root\mp3file\shellex\ContextMenuHandlers\WMPBurnAudioCD). Man doppelklickt nun im rechten Fenster des Registrierungs-Editors auf den Eintrag (Standard). Es wird ein Fenster geöffnet, in dem man den Wert bearbeiten kann. In dem Fenster ist eine lange alphanumerische Kennung in geschweiften Klammern eingetragen: Dies ist die so genannte CLSID, anhand der Windows die Shell-Erweiterung identifiziert. Diese CLSID könnte im Fall der MP3-Datei zum Beispiel {8DD448E6-C188-4aed-AF92-44956194EB1F} lauten. Man braucht nun lediglich ein Minus an den Anfang der CLSID zu setzen, um die Shell-Erweiterung zu deaktivieren: -{8DD448E6-C188-4aed-AF92-44956194EB1F}

Nun müsste die Shell-Erweiterung aus dem Kontextmenü verschwunden sein. Falls dem nicht so ist, wählt man den Befehl Bearbeiten > Suchen und im Ast Hkey_Classes_Root\CLSID eine Suche nach der fraglichen CLSID durch, also in unserem Beispiel nach {8DD448E6-C188-4aed-AF92-44956194EB1F}. Die Fundstelle deaktiviert man dann ebenfalls, indem man den Befehl Bearbeiten > Umbenennen betätigt und dem CLSID-Schlüssel ein Minuszeichen voransetzt.

Ein Reset der Explorer-Konfiguration
Es kommt immer wieder vor, dass der Windows-Explorer nicht mehr so funktioniert, wie er sollte. In diesem Fall empfehle ich wie beschrieben eine Aufräumaktion. Oft sind es Erweiterungen, die den Explorer in die Knie zwingen.

Wenn das nicht hilft, kann man es mit einem Reset der Konfiguration probieren. Dafür gibt es leider kein Standard-Verfahren von Microsoft. Ich stelle aber in der Datei hier die aus einem jungfräulichen Benutzerkonto exportierten Registry-Informationen zur Verfügung. Diese müssen lediglich aus dem ZIP-Archiv entpackt und der Registry durch Doppelklick auf die Reg-Datei hinzugefügt werden. Das Verfahren beschreibe ich auch im Beitrag Der Windows-Konfigurations-Moloch. Achtung! Anwendung auf eigene Gefahr!

Darüber hinaus empfehle ich folgende Dinge:

Autor: Matthias

Diese Website gibt es seit 1999. Gebloggt wird hier seit 2007.

Kommentar verfassen