Para abrir un archivo en pdf o cualquier otro tipo de archivo (sea cual sea su extensión), simplemente añadimos el siguiente código en el formulario donde estemos trabajando:
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
Y en el botón, menú, imagen…. donde queremos que se abra el archivo pdf ponemos lo siguiente:
Me llamo Víctor López y nací en Zaragoza el 16 de Diciembre de 1984.
Esta web la monté exactamente el 23 de Mayo del 2005 con la idea de publicar mis experiencias personales, cosas curiosas que veía a mi alrededor (tanto en Internet como en mi vida) y el poder tener mi propio espacio web en la red. Si quieres puedes ver las estadísticas del año 2010.
Ingeniero Superior en informática (terminé la carrera en 2006), desde pequeño ya estaba totalmente convencido a lo que me iba a dedicar en mi vida, la informática. Quizás porque mi padre tenía un Spectrum y me pegaba horas trasteándolo o quizás porque desde pequeño siempre me han gustado “los chismes”. El caso es que empezó a gustarme este mundo de la informática.
Profesionalmente soy Analista-Programador Senior en PHP y me dedico al análisis, desarrollo y programación de páginas web y al desarrollo de aplicaciones (principalmente web en PHP, empecé a programar en el año 2002 en PHP), creación, alojamiento, optimización (diseño, SEO, publicidad), puesta en marcha de webs y potenciándolas.
Actualmente soy Lead Integration Engineer en EnGrande.com – BudGetPlaces.com, además de formar parte de Homein.com (anteriormente he trabajado en Atrapalo.com, Camyna.com y Sync.es).
Socio fundador de Coompy.es Alquilar habitación – Compartir piso.
Partidario del software libre y usuario asiduo de Ubuntu y CentOS. Fui usuario de Mac pero ahora ya he vuelto al buen camino con Linux (Ubuntu distro).
Sobre mi filosofía de vida, te invito a que leas este artículo: “Tu eres el resultado de ti mismo“. Si lo lees, entenderás mi punto de vista de la vida.
Intento estar lo más lejos posible de la monotonía y considero mi trabajo como un hobby, me gusta aprender cosas nuevas cada día y afrontar nuevas metas y proyectos.
En mi tiempo libre me gusta practicar cualquier deporte (el fútbol especialmente), me gusta competir (sea el ámbito que sea), los coches, las buenas películas/series y viajar.
Personalmente considero que lo primero en esta vida es la salud y las personas, dejando atrás otras cosas, como puede ser el dinero, la fama y todas esas chorradas, que cuanto más las tienen las personas, más las quieren y menos les importan los demás. Y creo que el respeto y educación es fundamental.
Pues eso es todo, un breve resumen de mi persona.
Si te quieres anunciar en mi blog, contactar conmigo ya sea para la contratación de mis servicios, ofertas, agradecimientos, quejas, insultos, amenazas y/o similares, puedes mandarme un correo cuando quieras.
Mi correo personal de contacto es: http://helektron.com/contacto-personal/
Puedes seguir este blog por Google Plus, Facebook, Twitter, RSS y por mail.
47 comentario en “Abrir cualquier tipo de archivo en VB”
me manda este error.. que significa????
Additional information: Una llamada a la función PInvoke ‘WindowsApp!WindowsApp.Form1::ShellExecute’ impidió la correspondencia de la pila. Es posible que la razón sea que la firma PInvoke administrada no coincida con la firma de destino no administrada. Compruebe que la convención y los parámetros de llamada de la firma PInvoke coinciden con la firma no administrada de destino.
y como seria si el l nombre del archivo lo tiene que digitar el usuario en un cuadro de texto… como quedaría el Código…
muchas gracias por la informacion.-
Mil gracias a los programadores por sus aportes en especial a darklabade, me ha solucionado un problema
funciona correctamente el siguiente codigo lo puse en un modulo y desde cualquier parte cogia la declaracion publica:
Public 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
me manda este error.. que significa????
Additional information: Una llamada a la función PInvoke ‘WindowsApp!WindowsApp.Form1::ShellExecute’ impidió la correspondencia de la pila. Es posible que la razón sea que la firma PInvoke administrada no coincida con la firma de destino no administrada. Compruebe que la convención y los parámetros de llamada de la firma PInvoke coinciden con la firma no administrada de destino.
y como seria si el l nombre del archivo lo tiene que digitar el usuario en un cuadro de texto… como quedaría el Código…
muchas gracias por la informacion.-
Mil gracias a los programadores por sus aportes en especial a darklabade, me ha solucionado un problema
funciona correctamente el siguiente codigo lo puse en un modulo y desde cualquier parte cogia la declaracion publica:
Public 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
y desde cualquier formulario solo lo utilizaba:
ShellExecute Me.hwnd, «open», «E:\precision\soluciones_ensacadoras_tolbag.pdf», «», «», 4
Oigan todos.
Hola amigos, yo tengo un codigo que abre cualquier tipo de archivo desde la ubicacion que deses.
Pueden tener su archivo en varias subcarpetas y no habra problemas para abrirlo.
Si quieren mandenme mensaje a: david_1985_t@hotmail.com
ahora si me divertire jugando el inmortal starcraft
funciona de a 10 esto de process.start(«ruta»)
las pelotas del marrano, ja