Menu Personalizado

21/10/2004 - 16:07 por Alexander | Informe spam
Hola, viendo el winzip por ejemplo, que al hacer clic derecho sobre el nombre
de un archivo salen sus opciones, quisiera que una aplicación mia implemente
eso mismo y que realice unas acciones al seleccionar esa opcion implementada
en el menú.

Eso se puede hacer?, cómo se haría?


Desde ya mil gracias!!!
 

Leer las respuestas

#1 Eduardo A. Morcillo [MS MVP VB]
21/10/2004 - 17:23 | Informe spam
Hola, viendo el winzip por ejemplo, que al hacer clic derecho sobre
el nombre de un archivo salen sus opciones, quisiera que una
aplicación mia implemente eso mismo y que realice unas acciones al
seleccionar esa opcion implementada en el menú.

Eso se puede hacer?, cómo se haría?



Tienes dos formas de hacerlo. Una es asociar un ejecutable con la opcion del
menu de forma que cuando se seleccion se le pase por la linea de comandos el
nombre del archivo sobre el que tiene que hacer la accion. Esto lo haces
escribiendo unas claves en el registro. Por ejemplo:

HKEY_CLASSES_ROOT\.miextension = "MiTipoDeArchivo"
HKEY_CLASSES_ROOT\MiTipoDeArchivo = "Mi Tipo De Archivo"
HKEY_CLASSES_ROOT\txtfile\shell\miaccion = "Mi Accion"
HKEY_CLASSES_ROOT\txtfile\shell\open\command = "c:\path\miejecutable.exe
/accion %1"

Esta forma es la mas simple, pero no puedes crear submenues con ella.

La otra forma es crear una extension de tipo menu contextual. Esto es una
dll que agrega y ejecuta las acciones del menu. En mis paginas tienes una
coleccion de clases base para la creacion de estas y otras extensiones que
te facilitan crearlas y registrarlas.

Shell Extensions with .NET
http://www.mvps.org/emorcillo/dotne...ions.shtml

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo

Preguntas similares