Hi,
heute mal zu etwas, das Ich persönlich sehr praktisch finde: Das ändern des Kontextmenüs. Was ein Kontextmenü ist, weißt du denke Ich. Falls nicht: Das ist das Menü das aufklappt, wenn auf beisp. eine Datei Rechtsgeklickt wird. Für weniger versierte wird das kaum spannend sein, aber wenn du es noch nicht wusstest: Es gibt die Möglichkeit, dort selbst Einträge anzulegen. Nehmen wir als Beispiel einmal eine Datei. Du führst einen Rechtsklick aus, und über das Kontextmenü stehen Optionen wie z.B. 'Öffnen', 'Löschen', 'Umbenennen', 'Kopieren' und dergleichen zur Verfügung. Und dort kannst du eigens einen Eintrag anlegen. Darauf, hierfür einen eigenen Artikel in meinem Blog zu gestalten, bin Ich heute gekommen, als Ich den Pfad einer Datei kopieren wollte. So ohne weiteres ist das gar nicht möglich, denn in den Eigenschaften steht auch nur der Pfad, nicht der Dateiname selbst. Daher hab' Ich mir dafür etwas in's Kontextmenü geschrieben, und wie Ich das gemacht habe, will Ich dir nun einmal zeigen.
Eigenes Kontextmenü (für Dateien) anlegen Dafür musst du in den Registrierungs-Editor. Wie du dorthin gelangst? Ganz einfach, du navigierst Richtung C:WindowsSystem32 und startest dort die Datei 'regedit.exe' mit Administratorrechten. Alternativ drücke [Win+R] und schreibe 'regedt32' und Drücke [Enter].
Dort hangelst du dich zum Pfad HKEY_CLASSES_ROOT/*/Shell. Hier erstellst du einen neuen Schlüssel indem du auf /Shell rechtsklickst und über Neu->Schlüssel einen neuen Schlüssel anlegst. Benenne diesen nun. Der Name den du hier einträgst, ist der, der später im Kontextmenü zu sehen sein wird. Ich nenne es hier einmal 'Dateipfad kopieren'.
Führe nun auf dem eben erstellten Schlüssel 'Dateipfad kopieren' einen Rechtsklick aus und erstelle auch hier einen neuen Schlüssel, diesen musst(!) du 'command' nennen. Du siehst nun im rechten Fenster den Standardwert '(Standard)' vom Typ 'REG_SZ', also eine einfache Zeichenfolge. Ein Wert ist noch nicht gesetzt. Dort schreibst du den Befehl, welcher ausgeführt werden soll, wenn später im Kontextmenü draufgeklickt wird. Wenn du dich in der Eingabeaufforderung ein bisschen auskennst, hast du hier keine Probleme.
Was wir wollen, ist, den Pfad zur jeweiligen Datei in die Zwischenablage zu kopieren. Mache einen Doppelklick auf '(Standard)' und schreibe in das Textfeld folgendes:
<div style="color: #FFFFFF; font-size: 12pt; background-color: #222222; border-radius: 5px; padding: 10px;"> c:windowssystem32cmd.exe /c echo "%1"|clip </div>
Der Befehl sorgt dafür, dass der Dateipfad (%1) in die Zwischenablage kopiert wird. So sollte das im Registrierungs-Editor bei dir nun auch aussehen:
Und wenn das bei dir genauso ist, hast du es bereits geschafft. Such dir auf deinem PC nun irgendeine Datei aus, klicke rechts darauf und dann auf "Dateipfad kopieren". Der Dateipfad ist nun in der Zwischenablage und kann in jedem Textfeld über Rechtsklick->Einfügen oder alternativ die Tastenkombi [STRG+V] wieder eingefügt werden.
Die Sache mit dem Kontextmenü kannst du für alle Dateien (wie hier eben über HKEY_CLASSES_ROOT/*/Shell), aber auch für Ordner/Verzeichnisse organisieren. Für Verzeichnisse gibt es mit Reg-Editor den Pfad /HKEY_CLASSES_ROOT/Folder/Shell. Daher hier noch einige (nützliche?) Dinge die du in's Kontextmenü einbauen kannst:
<table border="1" style="border-collapse: collapse; padding: 5px;"> <tr> <th>Name (Vorschlag)</th> <th>Befehl</th> <th>Anwendbar auf..</th> </tr> <tr> <td>Ordnerinhalt löschen</td> <td>c:windowssystem32cmd.exe /c del "%1*.*" /s /q /f</td> <td>Verzeichnisse</td> </tr> <tr> <td>Eingabeaufforderung hier öffnen</td> <td>c:windowssystem32cmd.exe /k cd "%1"</td> <td>Verzeichnisse</td> </tr> <tr> <td>Dateiinhalt kopieren</td> <td>c:windowssystem32cmd.exe /c type "%1"|clip</td> <td>Dateien</td> </tr> </table>
Du kannst diese Schlüssel und dazugehörigen Werte einfacher in den Registrierungs-Editor bringen, indem du die .reg-Dateien, die Ich hier vorbereitet hab', HIER herunterlädst. Klick einfach doppelt drauf, dann tragen sich die 3 Schlüssel (aus der Tabelle) selbst ein. Mehr dazu steht in der Readme.txt ;-) Lass dir auch selbst noch was einfallen, möglich ist alles ;-)
Grüße Marius
Kommentare
Kommentar schreiben