Programación General > Visual Basic para principiantes

 Common Dialog

(1/2) > >>

Yuriandy:
Hola a todos, tengo un problemita con el common dialog, yo quiero abrir los documentos de word que yo quiera, entonces coloco el siguiente código en un botón:

Private Sub Command1_Click()
CommonDialog1.Filter = "Documentos (*.doc)|*.doc"
CommonDialog1.FilterIndex = 2
CommonDialog1.ShowOpen
End Sub

Posteriormente ejecuto el programa, doy clic en el botón asignado y me abre la pantalla del common dialog para buscar el documento que desee, pero cuando le doy abrir a un documento no me sale nada, se que falta algo y ustedes tienen mi respuesta, les agradecería su colaboración

Si pueden me mandan el código entero de esto, para estudiarlo mejor.

Mollense:
Que tal Yuriandy...

El problemas es que en realidad tu código no está tratando de abrir un archivo.

Con CommonDialog simplemente vas a obtener la ruta y el nombre de algún archivo que seleccione el usuario.
Dicha ruta y nombre la obtenés mediante CommonDialog1.FileName después de haber ejecutado CommonDialog1.ShowOpen
Por lo que solamente bastaría abrir el archivo utilizando shellexecute con la ruta y el nombre obtenidos.-

Sobre shellexecute busca en este mismo foro  ;)

Yuriandy:
Hola amigo, quiero decirte que me cansé de buscar por todas las discusiones y encontré solamente el shellexecute para abrir un archivo en específico ya conocido, pero eso no es lo que yo quiero.
es decir, necesito buscar por todos los directorios de la máquina el documento que quiera el usuario y abrirlo, por favor lo necesito, si puedes preparame el codiguito te lo agradecería, ya que estoy un tanto atrasado con esto. Gracias.

AnioN:
Solo debemos introducir el codigo, crear un Boton llamado command1.
modificar la linea 6 con la letra de la unidad de disco duro en la que vamos a realizar la busqueda.
y en la linea 29 modificar AcroRd32.exe por el nombre del archivo que vamos a buscar.

Una vez ejecutado el codigo, se mostrará una alerta con la direccion fisica hacia el archivo.


--- Código: Text ---' El codigo ha sido proporcionado: http://www.tutores.orgFunction PathTo(strFile As String) As StringDim x As IntegerDim strDirs As StringDim strDir As StringDim strEntry As StringstrDirs = "c:\" & vbNullCharDo While Len(strDirs)x = InStr(strDirs, vbNullChar)strDir = Left$(strDirs, x - 1)strDirs = Mid$(strDirs, x + 1)If Len(Dir$(strDir & strFile)) ThenPathTo = strDir & Dir$(strDir & strFile)Exit FunctionEnd IfstrEntry = Dir$(strDir & "*.*", vbDirectory)Do While Len(strEntry)If (GetAttr(strDir & strEntry) And vbDirectory) ThenIf strEntry <> "." And strEntry <> ".." Then  strDirs = strDirs & strDir & strEntry & "\" & vbNullCharEnd IfEnd IfstrEntry = Dir$LoopLoopPathTo = ""End Function Private Sub Command1_Click()MsgBox PathTo("AcroRd32.exe")End Sub  

mamex:
Que tal, aqui te dejo una solucion y espero te sirva. :hola:


--- Código: Text --- 'Declara la funcion shellexecutePrivate 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 'al presionar un boton busca el archivoPrivate Sub Command1_Click()    Dim archivo As String    CommonDialog1.ShowOpen    archivo = CommonDialog1.FileName    ShellExecute Me.hwnd, "Open", archivo, "", "", 1End Sub  

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa