Podczas rozszerzania menu kontekstowego powłoki systemu Windows (np. W celu dodania do katalogów monitu „Otwórz tutaj polecenie”) należy utworzyć w rejestrze klucz „polecenie”.
Wartość tego klawisza „polecenia” najwyraźniej może być dowolną prawidłową linią poleceń.
Chcę wiedzieć, które „zmienne specjalne” są dostępne do użycia w tym wierszu poleceń.
Na przykład używam następującego polecenia do otwierania okna cmd z menu kontekstowego katalogu (*):
cmd.exe /e:on /f:on /s /k pushd "%V"
Nie mogę znaleźć żadnego odniesienia do tego, co %V
tak naprawdę oznacza lub jaka jest pełna lista takich zmiennych.
(*) W tym celu tworzone są następujące klucze rejestru:
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\cmdshell]
@=Open Command Prompt Here"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\cmdshell\command]
@="cmd.exe /e:on /f:on /s /k pushd \"%V\""
%W
: Nie zawsze jest dostępne i spowoduje wyświetlenie tajemniczego komunikatu o błędzie, jeśli zostanie użyty w twojejcommand
wartości. Na przykład wywołanie elementu menu kontekstowego w menu kontekstowym dysku lub folderu biblioteki nie zainicjuje tej zmiennej. Unikaj jego używania poza pozycją menu kontekstowego procedury obsługi plików.%~
? Dostaję tylko błąd.%V
należy użyć, jeśli chcesz nazwę katalogu, tj. gdy chcesz dodać polecenie do menu kontekstowego po kliknięciu tła, a nie pojedynczego pliku lub nazwy katalogu.%L
nie zadziała w takim przypadku.To pytanie mnie zaintrygowało, więc zacząłem eksperymentować. Mam folder
C:\iso
. Co znalazłem po kliknięciu prawym przyciskiem myszy:I
zwracał inny zestaw liczb przy każdej próbie.H
zawsze 0 iS
był zawsze 1.D
,L
iV
wszystkie były folder docelowy.W
był rodzicem folderu docelowego. Czy ktoś ma zamiar to rozwinąć?Do Twojej wiadomości: Użyłem następujących wpisów rejestru do przetestowania:
(Znaki `zostały użyte jako ograniczniki)
źródło
Oto argumenty / składnia cmd.exe
/k
wykonuje polecenie określone przez następujący ciąg, więc wykonuje polecenie,pushd %V
a ponieważ jedynym argumentem pushd jest akceptacja , wynika z tego, że%V
zmienna dostarczona przez eksploratora, która zawiera ścieżkę do folderu klikniętego prawym przyciskiem myszy.źródło
Naprawdę trudno jest znaleźć znaczenie% V lub listę tych zmiennych. Za pomocą Google odkryłem, że istnieje również% L. Nie sądzę, że musisz przekazać więcej niż% V lub% L do monitu, ponieważ myślę, że nie ma innych użytecznych informacji. Gdzie% V może być nazwą katalogu,% L może być lokalizacją pliku. Wykonanie „echa” może pomóc w razie wątpliwości ...
źródło