Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/11/2012, 16:56
ameno123
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 13 años, 9 meses
Puntos: 1
De acuerdo Modificar menú contextual de windows

Hola, estoy haciendo un programa pero quiero que cuando haga click derecho en una carpeta me de la opción en el menú contextual.

Osea, click derecho en la carpeta --> abrir mi programa

Y que cuando aprete se habra mi programa y que en una variable se guarde el nombre del programa en el que le hicieron click derecho.

Conseguí un código y lo modifiqu´para que quede así.

Código:
Private Sub Command1_Click()

    'variable de tipo object para leer y crear claves _
    en el registro medianet windows scripting Host

    Dim obj As Object

    'Para la ruta de nuestra aplicacion
    Dim ruta As String

    'seteamos la variable y creamos el objeto
    Set obj = CreateObject("WScript.Shell")

    'ahí hace que cuando haga click derecho aparezca mi opcion
    Resultado = obj.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\")

    
    obj.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\Shell\miprograma\", _
                 "Abrir mi programa"

    'Ruta de nuestro exe
    ruta = App.Path & "\" & App.EXEName & ".exe"

    'Ahora dentro de la clave que creamos que quedó de esta manera:
    '"HKEY_CLASSES_ROOT\htmlfile\shell\miprograma\command" y agregamos la ruta mas el %1
    obj.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\Shell\miprograma\command\", _
                 """" & ruta & """" & " " & "%1"

    'Eliminamos la variable de objeto
    Set obj = Nothing
 

 
End Sub

Private Sub Form_Load()
    'Cuando se inicia el form cargará la página pasada desde la linea de comandos
    WebBrowser1.Navigate Command$
    Command1.Caption = " Asociar Extensión Htm "
End Sub

Lo modifiqué por la mitad..

LO que hace es que cuando hago click derecho en una carpeta me muestra la opción " abrir mi programa" y cuando lo apreto intenta abrirlo CON mi programa.


¿Como hago para que cuando aprete el botón "abrir mi programa" abra mi programa y se guarde en una variable el nombre de la carpeta?