02 enero, 2015

Añadir funciones a los menús contextuales de Windows

Antes de nada comentar que, tengo varias entradas al respecto sobre esto, pero vi que en ninguna profundizo mucho de donde están, cuantas y para que valen la susbclaves del registro de Windows que podemos usar para llevar a cabo la tarea de agregar/crear accesos directos a aplicaciones o funcionalidades de Windows dependiendo donde nos ubiquemos con el menú contextual (botón derecho).
Aunque ya hay suficiente información en internet sobre esto, comento esto para tenerlo como apunte personal de forma directa.

Lugares del registro de Windows donde se guardan las configuraciones del menú contextual:

HKEY_CLASSES_ROOT\*\shell
Se mostrarán en el menú contextual en cualquier tipo de archivo, por lo que se debe de utilizar en funciones que involucren solo a archivos, no carpetas ni directorios.

HKEY_CLASSES_ROOT\Directory\shell
Se mostrarán en el menú en cualquier directorio o carpeta

HKEY_CLASSES_ROOT\DesktopBackground\Shell
Se mostrarán en el menú solo en el escritorio, por ejemplo, aquí se encuentra la opción de Resolución de pantalla, Gadgets, etc.

HKEY_CLASSES_ROOT\Directory\Background\shell 
Se mostrarán en el menú en el fondo de cualquier directorio y en el escritorio.

HKEY_CLASSES_ROOT\Drive\shell
Se mostraran en el menú de las unidades de disco.

Pondré un ejemplo:

Crearé unas dos claves para poder apagar y reiniciar el PC desde el manú contextual del escritorio.

[1] - Abrimos el registro de Windows y nos vamos en este caso a la siguiente rama: HKEY_CLASSES_ROOT\Directory\Background\shell.
[2] - Creamos un nueva subclave en Shell con el nombre que queramos que aparezca en el menú contextual, en mi caso pondré Apagar en una y Reiniciar en otra.
[3] - A su vez creamos otra subclave por debajo de estas con el nombre de command.
[4] - En la parte derecha del registro de Windows donde está el valor tipo cadena "Predeterminado", lo abrimos e introducimos como dato, en el caso de:
Apagar: shutdown /s /t 0
Reiniciar: shutdown /r /t 0

Figura 1: Creando claves en regedit para poder apagar el equipo desde el menú contextual del escritorio.

Cerramos el registro una vez finalicemos y nos vamos al escritorio a comprar que realmente se crearon dichos valores y que tienen efecto.

menú contextual regedit
Figura 2: Menú contextual del escritorio, ya podemos reiniciar/apagar el PC de este modo. 

Selección de Iconos:

Este tipo de entradas se mostrarán en el menú contextual solo con el nombre utilizado, aunque es posible mostrar un icono a su lado si lo deseamos, para ello:
[1] - Nos situados en la misma clave donde se encuentra el valor con el nombre al que hacemos referencia en el menú, (ANTES de la clave "command").
[2] - Creamos otro valor tipo cadena el cual le daremos el nombre de Icon.
[3] - Una vez creado, lo abrimos y en el campo de datos pegamos la ruta donde se encuentre el icono con el que queremos hacer referencia.

Si se trata de una aplicación de Windows, no es necesaria la ruta, simplemente podremos referenciar el proceso y Windows ya interpreta el mapeo, por ejemplo: explorer.exe, notepad.exe, worpad.exe, etc.
Existen aplicaciones que contienen varios iconos, entonces podrás escoger el de tu preferencia especificando el número que le corresponde antecedido por una coma, por ejemplo: explorer.exe,9

Ordenar la posición en la lista del menú contextual:

Para regular la posición que tendrá la entrada creada en el menú contextual simplemente:
[1] - Nos situados en la misma clave donde se encuentra el valor con el nombre al que hacemos referencia en el menú, (ANTES de la clave "command").
[2] - Creamos un nuevo valor tipo cadena con el nombre de Position.
[3] - A este valor le podremos añadir los datos Bottom o Top, dependiendo si queremos que se nos muestra en la parte inferior o superior respectivamente del menú contextual.

Podremos también generar archivos .reg, automatizando estas tareas para en un futuro si perdemos estas configuraciones restaurarlas más rápidamente sin problemas.

Nota: Para estas modificaciones en concreto en el registro de Windows, no es necesario cerrar sesión ni reiniciar, aunque si NO se nos aplicara en el momento, bastaría con cerrar sesión y volver iniciar sesión con el mismo usuario.

Por rellenar un poco más esta entrada simplemente mencionaré unas herramientas gratuitas las cuales nos van permitir hacer todo lo anterior y de más opciones de forma gráfica e intuitiva, si no queremos complicarnos editando el registro de Windows.

Algunas de ellas son (descargas en sus websites oficiales):
FileMenu Tools, ContextEdit, ShellMenuView (by nirsoft), ShellExView (by nirsoft), Context Menu Enhancer.

Saludos!

0 Comentarios :

Publicar un comentario

Entradas Relacionadas