Czy można utworzyć podfoldery w menu „wyślij do” w kontekście Eksploratora

8

Mam wiele miejsc docelowych „wysyłaj do”. Chciałbym utworzyć podfoldery w folderze „Send to”. czy to możliwe? Kiedy spróbuję, utworzy tylko prawdziwy folder w folderze SendTo.

Chcę wybrać element z menu kontekstowego „Wyślij do”, aby rozwinąć listę miejsc docelowych SendTo dla tej grupy.

oświetlony
źródło
1
Jest to jedna z tych rzeczy, o których nigdy nie zdawałeś sobie sprawy, że chcesz, dopóki nie dowiesz się, że prawdopodobnie nie jest to możliwe. Mam nadzieję, że znajdziesz odpowiedź!
Michael Frank
1
@Psycogeek - Dziękujemy za zainteresowanie tym pytaniem. Mam nadzieję, że pojawi się twórcza odpowiedź.
zapalił
1
Niech jakiś wybawca napisze dla ciebie rozszerzenie powłoki ...
guest-vm

Odpowiedzi:

9

Alternatywne podejście w celach informacyjnych:

menu

Zapisz następujące dane *.regi zaimportuj do rejestru (dostosowane z Sully @ Wilders Security )

Edytor rejestru systemu Windows w wersji 5.00

[HKEY_CLASSES_ROOT \ * \ shell \ Moje menu]
„Ikona” = „shell32.dll, 43”
„Podkomendy” = „”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1]
„MUIVerb” = „Edytor tekstu”
„SubCommands” = „”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1 \ shell \ item1]
„MUIVerb” = „Notepad ++”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1 \ shell \ item1 \ command]
@ = "C: \\ Program Files \\ npp \\ notepad ++. Exe% 1"

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1 \ shell \ item2]
„MUIVerb” = „Podniosły tekst”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1 \ shell \ item2 \ command]
@ = "C: \\ Program Files \\ Sublime Text 3 \\ sublime_text.exe% 1"


[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu2]
„MUIVerb” = „Audio”
„SubCommands” = „”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu2 \ shell \ item1]
„MUIVerb” = „Audacity”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu2 \ shell \ item1 \ command]
@ = "audacity.exe% 1"

Referencje
AskVG
Directory Opus Resource Center


Dodatek: menu Pseudo-Folder

menu

Zapisz jako C:\copy.js

funkcja fnCopyHereJ (src, dest) {
    var objShell = new ActiveXObject ("shell.application");
    var objFolder = objShell.NameSpace (dest);

    if (objFolder) {
        objFolder.CopyHere (src);
    } else {
        WScript.echo („Invalid Folder:” + dest);
    }
}

args = WScript.Arguments;
fnCopyHereJ (args (0), args (1));

Importuj do rejestru

Edytor rejestru systemu Windows w wersji 5.00

[HKEY_CLASSES_ROOT \ * \ shell \ Moje menu]
„Ikona” = „shell32.dll, 43”
„Podkomendy” = „”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1]
„Ikona” = „imageres.dll, -113”
„MUIVerb” = „Obraz”
„SubCommands” = „”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1 \ shell \ item1]
„Ikona” = „shell32.dll, 3”
„MUIVerb” = „Folder 1”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1 \ shell \ item1 \ command]
@ = "wscript C: \\ copy.js% 1 C: \\ Users \\ 01 \\ Pictures"

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1 \ shell \ item2]
„Ikona” = „shell32.dll, 3”
„MUIVerb” = „Folder 2”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1 \ shell \ item2 \ command]
@ = "wscript C: \\ copy.js% 1 \" C: \\ Nowy folder \ ""


[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu2]
„Ikona” = „imageres.dll, -108”
„MUIVerb” = „Muzyka”
„SubCommands” = „”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu2 \ shell \ item1]
„Ikona” = „shell32.dll, 3”
„MUIVerb” = „Folder 1”

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu2 \ shell \ item1 \ command]
@ = "wscript C: \\ copy.js% 1 C: \\ Users \\ 01 \\ Music"


[HKEY_CLASSES_ROOT \ Directory \ shell \ My Menu]
„Ikona” = „shell32.dll, 43”
"ExtendedSubCommandsKey" = "* \\ shell \\ Moje menu”

Odwołania
Wywołaj kopię systemu Windows z PowerShell
Folder.CopyHere metoda (Windows)
Kaskadowe menu kontekstowe poprzez statyczne wpisy rejestru i ExtendedSubCommandsKey

guest-vm
źródło
To jest dobry pomysł. Wygląda na to, że wszystkie są używane do uruchamiania programów (np. Notepad ++, Audacity itp.). Czy którykolwiek z celów może być po prostu katalogiem, do którego kopiowany jest plik? To wciąż nie jest to samo, co użycie elementu „Wyślij do”, który ludzie już znają. Muszę podzielić się nimi z grupą 15-20 osób.
zapalił
Przepraszam, nie sądzę, że może. Obejście tego problemu @="cmd /c copy %1 NewFolder"jest niepewne i różni się od oczekiwań użytkownika (co jeśli% 1 to folder? Przerażające polecenie cmd z pytaniem, czy zastąpić?)
guest-vm
Okej, nie da się tego zrobić. Sprawdzę to jako odpowiedź, ale nie osiąga pierwotnego celu. Dzięki za pomoc.
zapalił
1
Zobacz zaktualizowaną odpowiedź. W ten sposób możesz ręcznie skonstruować folder docelowy. Obsługuje również przypadek, gdy% 1 jest folderem i monituje o zastąpienie standardowym GUI.
guest-vm