Visual Basic - Abrir Documentos desde visual Basic

Life is soft - evento anual de software empresarial
 
Vista:

Abrir Documentos desde visual Basic

Publicado por Betty (42 intervenciones) el 18/03/2004 13:29:21
Hola a todos, estoy creando una aplicación para unos amigos que han montado un negocio y quieren que en la aplicación puedan tener asociados distintos tipos de documentos. Por así decirlo, van a tener facturas (en documentos Word, Excel, pdf...), van a tener imagenes (bmp,gif,jpg,tiff....).... y demás. Los documentos que tengan asociados los tienes ubicados en una dirección y la información sobre el documento y la dirección la tengo en una base de datos. Mi problema ahora es como hacer para abrir la aplicación asociada a cada documento. Es decir, por ejemplo quieren consultar un documento pdf, selecionaran el documento y pulsarán por ejemplo un botón de abrir... esto será lo mismo para todos los documentos.... dado que apriori no se que documento voy a tener... ¿como le digo que aplicación tiene que seleccionar? Por así decirlo intento hacer lo que se hace desde windows, das doble clik al archivo y se abre la aplicación, en caso de no tener asociada ninguna sale una ventana informando con cualquiere abrirlo.
Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Abrir Documentos desde visual Basic

Publicado por Fernando (66 intervenciones) el 18/03/2004 17:36:16
Para abrir un documento puedes usar la Api de Windows ShellExecute, la unica que pega que tiene con lo que tu cuentas es que si no tiene asociado ningun programa para abrirlo no te saca una pantalla para que lo selecciones, te devuelve un error SE_ERR_NOASSOC =31.

La declaracion es :

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

Public Const SW_SHOWNORMAL = 1

La puedes usar asi:
ShellExecute(Me.hwnd, "open", PathDocumento, vbNullString, vbNullString, SW_SHOWNORMAL)

Espero que te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar