En realidad, la respuesta actual no está desactualizada. Probé exactamente lo mismo en Windows 10 y pude agregar Run Batch script
al menú contextual de todas las carpetas en Windows.
Este es el contenido de mi script por lotes (no funcionará con rutas UNC ):
@ECHO OFF
Se llamó a ECHO% ~ n0 con los siguientes argumentos:
SET args =% *
SI NO ESTÁ DEFINIDO args GOTO END
ECO %*
:FINAL
PAUSA
Los cambios de registro que hice se pueden replicar con este archivo REG:
Windows Registry Editor Versión 5.00
[HKEY_CLASSES_ROOT \ Directory \ shell \ Run Batch script]
@ = "& Ejecutar script por lotes"
[HKEY_CLASSES_ROOT \ Directory \ shell \ Run Batch script \ command]
@ = "\" H: \\ BATCH_FILE_PATH \\ context-batch.bat \ "\"% 1 \ ""
Esto solo agrega un elemento de menú contextual para todos los directorios / carpetas en Windows. Si desea que se muestre para todos y cada uno de los archivos, puede usar esto:
Windows Registry Editor Versión 5.00
[HKEY_CLASSES_ROOT \ * \ shell \ Ejecutar script]
@ = "Ejecutar y script"
[HKEY_CLASSES_ROOT \ * \ shell \ Ejecutar script \ comando]
@ = "\" H: \\ BATCH_FILE_PATH \\ context-batch.bat \ "\"% 1 \ ""
Alternativamente, puede agregar su script por lotes a la Send To
lista de elementos creando un acceso directo a su script por lotes y colocándolo debajo %APPDATA%\Microsoft\Windows\SendTo
(o ingrese shell:sendto
en la barra de direcciones)
Si desea que su script se muestre en el menú contextual que aparece cuando hace clic derecho en el espacio vacío dentro de un directorio (¿fondo de directorio?), Puede usar el siguiente archivo REG:
Windows Registry Editor Versión 5.00
[HKEY_CLASSES_ROOT \ Directory \ Background \ shell \ Run Batch script]
@ = "& Ejecutar script por lotes"
"Icon" = "% SystemRoot% \\ System32 \\ shell32.dll, 71"
[HKEY_CLASSES_ROOT \ Directory \ Background \ shell \ Run Batch script \ command]
@ = "H: \\ BATCH_FILE_PATH \\ context-batch.bat \"% V \ ""
No necesitas la "Icon"="%SystemRoot%\\System32\\shell32.dll,71"
línea. Simplemente agrega un icono a su menú contextual que se ve así: