Underc0de

Programación General => Visual Basic => Códigos Fuentes => Mensaje iniciado por: ANTRAX en Julio 26, 2010, 11:45:08 AM

Título: Ejecutar Cualquier tipo de Archivos
Publicado por: ANTRAX en Julio 26, 2010, 11:45:08 AM
Esta es una función que nos permite ejecutar Cualquier Archivo siempre y cuando existe un programa para abrir dicho archivo.
Ademas ejecuta los .exe y abre directorios o unidades.
Ejemplo
Ponemos Direccion="D:/" ABRIRA UNA BENTANA con el contenido de D
Ponemos Direccion="D:/PEPE" ABRIRA UNA BENTANA con el contenido de pepe
Ponemos Direccion="D:/PEPE/doci.doc" ABRIRA doci.doc sin existe un programa para abrirlo como es elWord.

Escriba este codigo en el formulario en General:

Public Sub EjecutarArchivos(Direccion As String)
On Error GoTo error
ret = Shell("rundll32.exe url.dll,FileProtocolHandler " & (Direccion), 1)
Exit Sub
error: MsgBox Err.Description, vbExclamation, "Error de Ejecución"
End Sub

para ejecutar solo tenemos que poner
La función
ejemplo
EjecutarArchivos "c:\nota.txt"
Título: Re:Ejecutar Cualquier tipo de Archivos
Publicado por: _katze_ en Julio 26, 2010, 12:50:40 PM
otra variante tmb se podria hacerlo de distintas formas ! pero esta es usando una api
Private Declare Function ShellExecute Lib "shell32.dll" Alias _
    "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _
    ByVal lpFile As String, ByVal lpParameters As String, _
    ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
'declaramos esta api !
'por ejemplo en un boton
Private Sub Command1_Click()
Dim archivo As String
archivo = Environ$("windir") & "\" & "NOTEPAD" & ".exe"
Call ShellExecute(Me.hwnd, "Open", archivo, "", "", 1)

End Sub
y por si keremos autoabrirnos hacemos asi !
dim autoabrir as string
autoabrir = app.path &"\"& app.EXENAME & ".exe"
Call ShellExecute(Me.hwnd, "Open", autoabrir, "", "", 1)