¿Se pueden crear subcarpetas en el menú contextual "enviar a" del explorador?

8

Tengo muchos destinos de "enviar a". Me gustaría crear subcarpetas en la carpeta "Enviar a". es posible? Cuando lo intento, solo creará una carpeta real en la carpeta SendTo.

Quiero seleccionar un elemento del menú contextual "Enviar a" para expandirlo en una lista de destinos SendTo para ese grupo.

iluminado
fuente
1
Esta es una de esas cosas que nunca te diste cuenta que querías hasta que descubres que probablemente no sea posible. ¡Espero que encuentres una respuesta!
Michael Frank
1
@Psycogeek - Gracias por su interés en esta pregunta. Espero que aparezca una respuesta creativa.
encendido
1
Que algún salvador escriba una extensión de shell para usted ...
guest-vm

Respuestas:

9

Un enfoque alternativo para su referencia:

menú

Guarde los seguimientos como *.rege importe al registro (adaptado de Sully @ Wilders Security )

Windows Registry Editor Versión 5.00

[HKEY_CLASSES_ROOT \ * \ shell \ Mi menú]
"Icon" = "shell32.dll, 43"
"Subcomandos" = ""

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1]
"MUIVerb" = "Editor de texto"
"Subcomandos" = ""

[HKEY_CLASSES_ROOT \ * \ shell \ Mi menú \ shell \ menu1 \ shell \ item1]
"MUIVerb" = "Bloc de notas ++"

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

[HKEY_CLASSES_ROOT \ * \ shell \ Mi menú \ shell \ menu1 \ shell \ item2]
"MUIVerb" = "Texto sublime"

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


[HKEY_CLASSES_ROOT \ * \ shell \ Mi menú \ shell \ menu2]
"MUIVerb" = "Audio"
"Subcomandos" = ""

[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"

Referencias
AskVG
Directory Opus Resource Center


Anexo: menú de pseudocarpeta

menú

Guardar como C:\copy.js

función fnCopyHereJ (src, dest) {
    var objShell = nuevo ActiveXObject ("shell.application");
    var objFolder = objShell.NameSpace (dest);

    if (objFolder) {
        objFolder.CopyHere (src);
    } más {
        WScript.echo ("Carpeta no válida:" + dest);
    }
}

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

Importar al registro

Windows Registry Editor Versión 5.00

[HKEY_CLASSES_ROOT \ * \ shell \ Mi menú]
"Icon" = "shell32.dll, 43"
"Subcomandos" = ""

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu1]
"Icon" = "imageres.dll, -113"
"MUIVerb" = "Imagen"
"Subcomandos" = ""

[HKEY_CLASSES_ROOT \ * \ shell \ Mi menú \ shell \ menu1 \ shell \ item1]
"Icon" = "shell32.dll, 3"
"MUIVerb" = "Carpeta 1"

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

[HKEY_CLASSES_ROOT \ * \ shell \ Mi menú \ shell \ menu1 \ shell \ item2]
"Icon" = "shell32.dll, 3"
"MUIVerb" = "Carpeta 2"

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


[HKEY_CLASSES_ROOT \ * \ shell \ Mi menú \ shell \ menu2]
"Icon" = "imageres.dll, -108"
"MUIVerb" = "Música"
"Subcomandos" = ""

[HKEY_CLASSES_ROOT \ * \ shell \ My Menu \ shell \ menu2 \ shell \ item1]
"Icon" = "shell32.dll, 3"
"MUIVerb" = "Carpeta 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]
"Icon" = "shell32.dll, 43"
"ExtendedSubCommandsKey" = "* \\ shell \\ Mi menú"

Referencias
Invoque una copia de Windows desde la
carpeta PowerShell . Método Copiar Aquí (Windows)
Menús contextuales en cascada a través de entradas de registro estáticas y ExtendedSubCommandsKey

invitado-vm
fuente
Esta es una buena idea. Parece que todos estos se utilizan para iniciar programas (es decir, Notepad ++, Audacity, etc.). ¿Puede alguno de los objetivos ser simplemente un directorio donde se copia el archivo? Todavía no es lo mismo que usar el elemento "Enviar a" que la gente ya conoce. Necesito compartir esto con un grupo, 15-20 personas.
encendido
Lo siento, no creo que pueda. La solución alternativa @="cmd /c copy %1 NewFolder"es inestable y difiere de las expectativas del usuario (¿qué pasa si% 1 es una carpeta? ¿Pregunta de cmd aterradora preguntando si se debe sobrescribir?)
guest-vm
Ok, no se puede hacer. Comprobaré esto como la respuesta, pero no alcanza el objetivo original. Gracias por tu ayuda.
encendido
1
Ver respuesta actualizada. Puede construir manualmente el destino a la carpeta de esta manera. También maneja el caso cuando% 1 es una carpeta y solicita que se sobrescriba con la GUI estándar.
guest-vm