Rozbudowujemy menu podręczne Windows

Rozbudowujemy menu podręczne Windows

Autor: Krzysztof Kapustka

Opublikowano: 5/15/2015, 12:00 AM

Liczba odsłon: 6715

W przeciwieństwie do pozostałych systemów operacyjnych, które stawiają zazwyczaj na zaawansowane możliwości konfiguracji i administracji, system Windows od samego początku projektowany był z myślą o wygodzie i prostocie jego użytkowania. Z tego też powodu po system ten od zawsze sięgała najszersza grupa użytkowników, jako że znacznie łatwiej i wygodniej jest nam coś po prostu wyklikać, niż uczyć się na pamięć skomplikowanych układów poleceń. Choć praca z systemem Windows nigdy nie należała do kłopotliwych, to nic nie stoi na przeszkodzie, by ją sobie jeszcze bardziej uprościć.

Systemy z rodziny Windows dostarczają nam wiele różnych funkcji i metod pozwalających ułatwić i przyspieszyć dostęp do interesujących nas elementów systemu czy zainstalowanych w nim aplikacji. Zamiast przekopywać się do rozsianych po dysku plików wykonywalnych programów, powiązane z nimi skróty pogrupowane mamy zazwyczaj w menu lub na ekranie startowym. Skróty te z powodzeniem możemy również poprzenosić na pulpit, a jeśli ten zbyt często sobie przesłaniamy oknami, możemy przypinać je także na pasku zadań. Czy dostęp do interesujących nas elementów może być jeszcze prostszy? Okazuje się, że tak. W końcu wszyscy od lat korzystamy z wywoływanego prawym przyciskiem myszy kontekstowego menu podręcznego, dzięki któremu wszystkie nasze ulubione elementy możemy mieć zawsze pod ręką. I to dosłownie.

W artykule tym zademonstrujemy pokrótce kilka prostych przykładów sprawnego rozbudowania podręcznego menu, dodając do niego własne elementy w postaci wywołań określonych aplikacji oraz nieco bardziej skomplikowanych poleceń. Zanim to jednak nastąpi, omówmy sobie na szybko narzędzie, które nam to umożliwi.

Rejestr systemu Windows

Rejestr jest główną bazą danych Windows, która w systemie Windows 95 zaczęła przejmować funkcję przechowywania ustawień systemu, realizowaną dotychczas przez pliki konfiguracyjne .INI. Od tamtej pory przechowuje się w nim praktycznie wszystkie ustawienia systemu i aplikacji, chyba że dane oprogramowanie dostarczane jest z własną bazą danych. Przeciętny użytkownik na ogół z rejestrem nie pracuje, gdyż nie jest to dedykowany sposób konfiguracji systemów Windows. Do tego służy nam Panel sterowania, który stanowi niejako wygodny i czytelny interfejs dla wybranych (bo nie wszystkich) ustawień rejestru. Każda wyniesiona na wierzch interfejsu opcja i przełącznik to jedyne elementy, z którymi powinien obchodzić się przeciętny użytkownik. Jeśli jednak zajrzymy do Edytora rejestru, znajdziemy tam całe mnóstwo zaawansowanych opcji, pozwalających nam w dość znacznym stopniu przekonfigurować sobie system.

My tutaj skupimy się na jednej z pięciu głównych gałęzi rejestru, HKEY_CLASSES_ROOT, w której to znajdują się poszczególne rozszerzenia i typy zarejestrowanych w systemie plików i katalogów. Każdą dostępną na liście pozycję reprezentującą dany rodzaj pliku możemy w prosty sposób przekonfigurować, stosując do tego zarówno zawarte już w rejestrze klucze, jak i też zupełnie nowe wartości. Zawarte we wspomnianej gałęzi wpisy wykorzystywane są przy każdorazowym wyświetleniu menu podręcznego, skonfigurowanego w zależności od elementu, na którym odbyło się jego wywołanie. Dzięki temu, że każdy typ pliku przechowuje swoją własną konfigurację, zawartość podręcznego menu dostosowuje się do aktualnie wybranego elementu. Stąd też system wie, że po kliknięciu prawym przyciskiem myszy wolnej przestrzeni pulpitu menu ma zaprezentować opcje dotyczące personalizacji i zmiany rozdzielczości ekranu, zaś po kliknięciu prawym przyciskiem dowolnego pliku graficznego otrzymujemy przykładowo możliwość jego podglądu w systemowej galerii. W każdym z tych przypadków otrzymywane w ten sposób menu możemy sobie dowolnie rozbudować o tworzone pod własne preferencje pozycje. Zobaczmy zatem, w jaki sposób możemy tego dokonać.

Uruchamianie Edytora rejestru

We wszystkich przykładach będziemy poruszać się po wspomnianej gałęzi rejestru HKEY_CLASSES_ROOT, do której dostęp uzyskamy z poziomu narzędzia Edytora rejestru. Aby go uruchomić, najprościej jest skorzystać z dowolnej wyszukiwarki systemowej lub otwierającego okno dialogowe Uruchom... skrótu Windows+R, wpisując następnie polecenie regedit (ze względu na potencjał możliwości tego edytora, próba jego uruchomienia wyzwolić powinna mechanizm UAC). Po uruchomieniu Edytora rejestru rozwijamy gałąź HKEY_CLASSES_ROOT i wybieramy z niej interesujące nas elementy.

Modyfikacja menu wywoływanego z pulpitu

W pierwszym przykładzie zademonstrujemy proces dodawania do wywoływanego z pulpitu menu wygodnego skrótu uruchamiającego aplikację kalkulatora. Przechodzimy do wylistowanej w ramach otwartej gałęzi pozycji DesktopBackground (wciśnięcie klawisza D ułatwi nam jej znalezienie), po czym rozwijamy jej zawartość. Jako że interesuje nas modyfikacja powłoki systemowej Windows, będziemy skupiać się zawsze na elemencie Shell (ang. powłoka). Rozwijamy więc również i tę pozycję. Jak łatwo zauważyć, widnieją tam już wspomniane opcje zmiany rozdzielczości (Display) i personalizacji (Personalize), które wyświetlane są właśnie w ramach tego menu.

Aby móc wstawić do niego własną pozycję, klikamy prawym przyciskiem element Shell w oknie drzewa po lewej i wybieramy Nowy -> Klucz. Nadajemy nowemu elementowi wygodną nazwę, np. Kalkulator i klikamy OK. Zaznaczamy nowo utworzony element, po czym klikamy dwukrotnie dedykowaną mu wartość o nazwie (Domyślna). W nowo otwartym oknie dialogowym podajemy nazwę, która będzie jednocześnie nazwą naszego polecenia, widoczną po wywołaniu menu. Wpisujemy więc Kalkulator i klikamy OK. Utworzyliśmy właśnie wpis o nazwie Kalkulator, którego wartością domyślną jest tekst Kalkulator. To jednak nie wystarczy. Mamy już co prawda widoczną w menu pozycję o zadanej nazwie, jednak gdy ją klikniemy, dowiemy się, że nie jest ona skojarzona z żadnym elementem systemu. Innymi słowy, system nie wie co ma zrobić po jej wybraniu. Wracamy więc do edytora i na utworzonym elemencie Kalkulator ponownie klikamy prawym przyciskiem myszy, po czym raz jeszcze wybieramy Nowy -> Klucz. Tym razem jako nazwę wprowadzamy command i zatwierdzamy. Różnica polega również na tym, że wartością domyślną dla tego wpisu będzie interesujące nas polecenie, będące w naszym przypadku komendą uruchamiająca kalkulator. Klikamy więc dwukrotnie wartość (Domyślna) i wprowadzamy do pola tekstowego nazwę programu, czyli calc (nazwą tą możemy wywołać kalkulator z dowolnego miejsca w systemie, np. z okna Uruchom... lub wiersza poleceń).

Zatwierdzamy przyciskiem OK i testujemy powstałe w ten sposób rozwiązanie. Jak widać nie jest to proces skomplikowany, a dzięki niemu możemy utworzyć sobie w systemie kilka przydatnych skrótów, chociażby do najczęściej używanych aplikacji.

W podobny sposób tworzymy wpisy uruchamiające wybrane przez nas aplikacje dla menu wywoływanych na innych elementach. A zatem, zamiast rozszerzać pozycję Shell elementu DesktopBackground możemy przykładowo skupić się na pozycji Shell elementu directory lub Folder (katalogi), na txtfile (pliki o rozszerzeniu .txt), czy w końcu na pozycji * (dowolne pliki).

Rozbudowa menu podręcznego o komendy wiersza poleceń

Nic nie przeszkadza, byśmy mogli w podobny sposób zdefiniować sobie nieco bardziej skomplikowany wpis w menu. Wystarczy już niewielka znajomość komend wiersza poleceń, by móc wzbogacać nasze menu o proste w działaniu skrypty. Oto krótki przykład.

Przypuśćmy, że chcemy w łatwy sposób wylistować sobie pełną zawartość katalogu z możliwością umieszczenia jej w systemowym schowku. Posługując się powyższym sposobem oraz dodając odpowiednie klucze do pozycji Shell elementu directory (lub elementu Folder) możemy zamiast nazwy pliku wykonywalnego aplikacji wstawić w to miejsce przygotowaną przez siebie formułę poleceń MS-DOS. W naszym przypadku niech będzie to formuła:

cmd /k echo "Wykaz folderu: %L" && dir /b "%L\*.*"

Powyższe polecenie tylko wygląda na skomplikowane, gdyż w rzeczywistości jest to wywołanie dwóch podstawowych komend systemu MS-DOS. Najpierw wywołujemy okno Wiersza poleceń (cmd) z przełącznikiem /k, dzięki któremu okno nie zniknie nam po zakończeniu działania operacji. Następnie dodajemy to, co faktycznie chcemy zrealizować - w naszym przykładzie będą to dwie komendy z argumentami, które wykonają się jedna po drugiej (stąd znak &&). Poleceniem echo wypisujemy najpierw tekst Wykaz folderu: wraz w podaniem zmiennej reprezentującej bieżącą ścieżkę do folderu, na którym wywołujemy nasze menu (%L - w Windows 7 i starszych może zajść konieczność zamiany tego znacznika na %1). Nagłówek ten prezentujemy tylko i wyłącznie dla własnej wygody. Drugie polecenie wylistuje nam zawartość rozważanego folderu. Polecenie listujące DIR wywołujemy z argumentem /b (bardziej przystępna, okrojona forma danych), po czym podajemy mu znacznik reprezentujący rozpatrywany katalog i zawarte w nim pliki. Mając powyższą formułę postępujemy już według czynności z pierwszego przykładu, z tym, że zamiast nazwy calc wpisujemy naszą formułę, a do tego nazywamy swój nowy wpis do menu odpowiednią nazwą, np. Wykaz folderu.

Idąc tym tropem możemy przerobić powyższą formułę tak, by zamiast wypisywać dane w oknie Wiersza poleceń kopiowała ona stosowne informacje do systemowego schowka, umożliwiając nam ich późniejsze dowolne wykorzystanie. Nowa formuła może wyglądać chociażby tak:

cmd /c dir /b "%L\*.*" | clip

Zamieniamy tu przełącznik wiersza poleceń z /k na /c, dzięki czemu okno konsoli zniknie tuż po wykonaniu polecenia. Znane z powyższego przykładu komendy listujące DIR przekazujemy jako argument do schowka przy użyciu mechanizmu potoku. My w naszym przykładzie utworzymy dla tej formuły osobny wpis w menu, dzięki czemu będziemy mieli wybór pomiędzy wypisaniem elementów na konsolę a umieszczeniem ich bezpośrednio w schowku.

Po zakończeniu nasze menu, jeśli tylko wywołane zostało na folderze, wygląda następująco:

Z kolei pozyskane w ramach opcji Wykaz folderu do schowka elementy prezentują się po wklejeniu jak poniżej (na przykładzie folderu C:\Windows\System32\Drivers):

Zachęcamy Was do własnych eksperymentów i tworzenia przydatnych dla siebie rozszerzeń menu, jednocześnie przestrzegając przed zbyt odważnym modyfikowaniem systemowego rejestru. Jeśli utworzone w powyższy sposób wpisy z niewyjaśnionych przyczyn nie będą Wam działać, po prostu usuńcie stworzone przez siebie pozycje, by nie pozostawały bezcelowo wyeksponowane w podręcznych menu. Choć ostrożności w zabawie z rejestrem nigdy za wiele, to jednak część z Was powinna się skusić na choćby jedną tego typu poprawkę systemu.

Jak wykorzystać Copilot w codziennej pracy? Kurs w przedsprzedaży
Jak wykorzystać Copilot w codziennej pracy? Kurs w przedsprzedaży

Wydarzenia