Abre todo tipo de archivo, carpeta en vb con shell | Teknolosys

Abre cualquier tipo de archivos,carpetas en vb6 con Shell

Abre todo tipo de archivo con shell

Una de las funcionalidades que cualquier sistema tiene (especialmente si se maneja con documentos) es poder visualizar los archivos. Uno de los métodos es a través del comando Shell. A través de este comando puedes abrir desde un archivo de texto , Word, pdfs hasta carpetas y/o enlaces. (Este comando Shell en realidad emula lo que realizas a través del comando ejecutar pudiendo abarcar muchísimas funcionalidades aparte de sólo “abrir archivos”).

Por lo general para usar la función Shell  contiene dos atributos : Shell ( extensión  ruta) donde la extensión  es referente al archivo por ejemplo , si se trata de Word sería :

Shell (“winword.exe ” & ruta).

En la red he encontrado este código que compartimos, el cual funciona para todo tipo de archivos, es decir, ya no tendremos que asignarle un  winword.exe o notepad.exe simplemente reconocerá la extensión y permitirá abrir el archivo.

Public Sub EjecutarArchivos(ruta As String)
Dim ejecutarShell As Variant
On Error GoTo error
ejecutarShell = Shell("rundll32.exe url.dll,FileProtocolHandler " & (ruta), 1)
Exit Sub
error: MsgBox Err.Description, vbExclamation, "Error al procesar la información"
End Sub
Asimismo, si se desea abrir carpetas, sólo basta colocar Shell ("explorer.exe " & ruta).
Adicionalmente muestro el código del ejemplo:

codigo para abrir archivo


6 Comments

  • By Gaston, September 5, 2012 @ 3:11 pm

    Esta muy bueno, me ayudo mucho, aun así lo probé con archivos que windows no tiene asociados por ejemplo un .bak y no hace nada seria bueno que nos abriera el cuadro “abrir con” en estos casos
    Slds.

  • By Luis Reyes, May 29, 2017 @ 11:39 am

    Hola excelente aporte, es exactamente lo estaba buscando!!

    Saludos desde México!!!

  • By Edu T, May 29, 2017 @ 11:41 pm

    Gracias, no olvides seguirnos en Facebook y Twitter 🙂

  • By Victor, July 26, 2017 @ 1:31 pm

    Me podrías proporcionar el codigo completo.
    No se si ocupaste un cuadro de texto o un botón.
    Yo busco que mediante un botón me lleve a una carpeta de archivos, a los cuales se pueda acceder.
    Gracias.

  • By Edu T, August 22, 2017 @ 8:56 pm

    Gracias, no olvides seguirnos en Facebook y Twitter
    El código se encuentra en el post, te enviamos por Facebook en caso lo necesites, dale me gusta para responderte más rápido 🙂

    Public Sub EjecutarArchivos(ruta As String)
    Dim ejecutarShell As Variant
    On Error GoTo error
    ejecutarShell = Shell(“rundll32.exe url.dll,FileProtocolHandler ” & (ruta), 1)
    Exit Sub
    error: MsgBox Err.Description, vbExclamation, “Error al procesar la información”
    End Sub

Posts relacionados

  1. Bitacoras.com — November 12, 2011 @ 4:41 pm

Deja un comentario

Tema