La Web del Programador: Comunidad de Programadores
 
    Pregunta:  16023 - COMO AGREGAR UNA OPCION AL MENU CONT. DEL NAVEGADOR
Autor:  Miguel Esquef
Hola estoy intentando crear una aplicacion en Visual Basic y nesecito agregar al navegador Internet Explorer o si es posible a cualquiera una opcion al precionar el botón derecho donde presente una submenu que me agregue a mi aplicacion la URL o la copie al portapapeles para capturarla . Por favor existe alguna forma creo que si pues he visto algunos programas hacerlo. Desde ya muchas gracias
Miguel

  Respuesta:  Juan Palma
Claro que se puede hacer. Para ellos debes añadir una nueva clave en el registro de Windows, dentro de la clave MenuExt del Internet Explorer. Ejemplo:

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\&Bajar con MiPrograma

Esto añade el comando "Bajar con MiPrograma" a los enlaces del Internet Explorer. Lo que yo no tengo muy claro es como interceptar eso, es decir, como saber cuando se ha pulsado esa opción del menú. Te aconsejo que instales algún programa que añada alguna opción al menu de IE, para que investigues.

Yo he estado investigando un poco y creo que funciona de la siguiente manera: tienes que crear un control activex que una de sus propiedades sea la url a capturar. Ese control debes insertarlo dentro de un documento html, de forma que al abrir la página el control ActiveX abra tu aplicación, pasándole como parámetro la url. Deberás registrar ese control durante la instalación de tu programa. En el registro de Windows, dentro de la clave que habrás creado, el predeterminado pones la ruta donde está el fichero html que contiene el control activex. Se supone que internet explorer, al pulsar esa opción en el menú, abrirá el documento html (sin que este se vea) pasandole como parametro la url, que a su vez abrirá tu aplicación, con ayuda del control activex. Observa que el download accelerator tiene un fichero dentro de donde los tengas instalado llamado dapextie.html, que es precisamente el fichero utilizado como enlace entre IE y el programa en sí.

En fin, ya se que he soltado un buen rollo, pero creo que la cosa va por ahí. Espero que esto te sirva de algo.