Visual Basic - abrir PDF y DOC si conoscosu ruta,desde un command

Life is soft - evento anual de software empresarial
 
Vista:

abrir PDF y DOC si conoscosu ruta,desde un command

Publicado por Khell Barrios Escobedo (11 intervenciones) el 02/06/2005 14:25:43
Hola, quisiera saber que codigo escribir dentro de un COMMAND (un boton) para que al darle click me abra un archivo PDF del cual ya conosco su ruta. (si logran ayudarme, por favor pongan como ejemplo la ruta c:\abc.PDF)
Y lo mismo para un archivo DOC del cual conosco su ruta también.(por ejemplo c:\abc.DOC)
Si debo escribir algun codigo fuera del COMMAND (como una función por ejemplo), agradecería que me digan en donde hacerlo EXACTAMENTE, ya que no manejo muy bien en Visual Basic.
Gracias.
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 PDF y DOC si conoscosu ruta,desde un comm

Publicado por SetFocus (183 intervenciones) el 02/06/2005 15:27:08
Hola! la manera mas rapida de hacer eso es con el uso de API's Por ejemplo la API ShellExecute te permite abrir un archivo con su aplicacion asociada, o sea en tu caso si le decis que es un .PDF abre acrobat reader y te muestra el archivo. De mas esta decir que el acrobat tiene que estar instalado en la maquina... sino te va a dar un bonito error... =) Bueno ahi te va el codigo

en la seccion general del form pone la declaracion de la API:

Private Const SW_NORMAL = 1
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 evento click del command:

ShellExecute hwnd, "Open", "c:\abc.PDF", vbNullString, vbNullString, SW_NORMAL

o para word

ShellExecute hwnd, "Open", "c:\abc.DOC", vbNullString, vbNullString, SW_NORMAL
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

RE:abrir PDF y DOC si conoscosu ruta,desde un comm

Publicado por Khell (11 intervenciones) el 02/06/2005 15:54:35
¿cuando me dices "en la seccion general del form" te refieres a cuando das 2click en cualkier parte del form y que esté seleccionado ACTIVATE en la ventana q aparece?
Ahi es donde lo puse, justo debajo de "Private Sub Form_Activate()" y antes de "End Sub
", que ya aparecian escritos en la ventana.
El problema es que al ejecutarlo me dice "Invalid Inside Procedure"
^__^ gracias por tu ayuda
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

RE:abrir PDF y DOC si conoscosu ruta,desde un comm

Publicado por setFocus (183 intervenciones) el 02/06/2005 16:20:59
Hola! bueno la seccion general del form es la parte de declaracione. Hace lo que decis.... hace doble click en el form, aparece la ventana de codigo, seguramente te situa en el evento LOAD, vos lo que tenes que hacer es seleccionar "General" donde dice "Form" si desplegas ese combo (que esta arriba de la ventana de codigo, al lado de otro combo que son los Porcedimientos), vas a ver que esta la seccion general, ahi pega el codigo que te dije. Saludos , espero me hayas entendido... =)
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

RE:abrir PDF y DOC si conoscosu ruta,desde un comm

Publicado por Leoman (7 intervenciones) el 02/06/2005 16:32:08
Hola Setfocus, vos como siempre apoyando...... una consulta adicional al tema en referencia, como y con q controles puedo hacer para guardar en un formulario la ruta de un archivo cualquiera (*.doc, *.pdf, *.xlsm etc...)... para poder luego con el codigo q mostraste, ejecutarlo sin tener q modificar la ruta en el boton de ejecución, es decir q me jale automaticamente la ruta del archivo guardado en el formulario...

La idea es que tengo un formulario de registro de clientes en una base de access, y para cada cliente debo adjuntar un archivo, y tener la opcion de ejecutar ese archivo por cada cliente.

Gracias amigo!!!
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

RE:abrir PDF y DOC si conoscosu ruta,desde un comm

Publicado por SetFocus (183 intervenciones) el 02/06/2005 17:48:57
Hola! Bueno podes usar el objeto CommonDialog para agregarlo al proyecto anda al menu "Proyecto - Componentes" y ahi elegi de la lista "Microsoft Common Dialog Control 6.0 " Entonces para probar el ejemplo que te voy a pasar, en un form agrega el commondialog, 1 boton y 1 textbox, sin cambiarles los nombres predeterminados, y pega el codigo que sigue en la seccion general del form:

Option Explicit

Function Encontrar_Archivo(ByVal Buscado As String, ByVal Titulo As String, ByVal Filtro As String) As String

On Error GoTo maneja_error

' Configurar dlgAbrir si no se encuentra el archivo.
With CommonDialog1
.FileName = ""
.DialogTitle = Titulo
.Filter = Filtro

' Produce un error si el usuario hace clic en cancelar
.CancelError = True
.ShowOpen

Do While UCase(Right(Trim(.FileName), Len(Buscado))) <> UCase(Buscado)
MsgBox "El nombre del archivo no es igual a " & Buscado, vbExclamation, "Busqueda Manual"
.ShowOpen
Loop
' Devuelve solamente el path sin el nombre
Encontrar_Archivo = Left(.FileName, Len(Trim(.FileName)) - Len(Buscado))
End With

Exit Function

maneja_error:

If Err <> 0 Then
Encontrar_Archivo = ""
End If

End Function

Private Sub Command1_Click()

Dim Archivo As String

Archivo = "Prueba.mdb"
Text1.Text = Encontrar_Archivo(Archivo, "No se encuentra el archivo " & Archivo, "(*.MDB)|*.mdb")

End Sub

Como ves es una funcion que se encarga de abrir el cuadro de dialogo de busqueda y valida que sea el archivo que buscas, sino se abre nuevamente. Cualquier duda escribime. Esta es la funcion que uso en mis desarrollos, bueno le saque algunas cosas.... vos arreglala a lo que necesitas.Saludos.
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

^_^

Publicado por Khell (11 intervenciones) el 02/06/2005 19:10:21
chevere, todo funciona bien, muchas gracias SetFocus. ^o^
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