Archivos .doc

Hola !, querría saber como hago para abrir un archivo .doc en una aplicación desarrollada por mi. Que habrá el word se pueda leer el archivo . Doc y que al cerrar el word que la aplicación que se estaba ejecutando.
Espero me puedan ayudar.
Saludos.

2 respuestas

Respuesta
1
Mmm
Pues lo único que tienes que hacer es
! do archivo.doc
o do archivo.doc
archivo.doc es toda la ruta del archivo
Hola !, como hago para que el usuario ingrese los documentos y para que se puedan ver en pantalla.
Mmm, bueno no se exactamente lo que quieres, si solo quieres que se abra word con el documento es fácil, pero si quieres que se mire en un formulario ya es algo más complejo pero indicame que es lo que quieres y te ayuda o
Hola !, si lo que quiero es que el usuario pueda tener un listado de documentos y que al hacer clic sobre uno de ellos se abra el programa correspondiente.
A bueno eso es más fácil
Lo que tienes que hacer es guardar el path o la ruta donde se encuentra el archivo pero primero el archivo debe pasar por el programa, es decir el archivo lo deben ingresar al programa y como lo haces
a = Getfile("Docx")
Messagebox(a)
Así encuentras ese archivo y guardas la dirección en la variable a
Lo siento se lo había enviado a alguien más
Declare Integer ShellExecute In shell32 Integer hwnd, String lpOperation, String lpFile,String lpParameters, String lpDirectory, Integer nShowCmd
Declare Integer FindExecutable In shell32 String lpFile, String lpDirectory, String @lpResult
Declare Integer GetActiveWindow In Win32Api
#DEFINE SW_SHOWMAXIMIZED         3
#DEFINE OUT_OF_MEM_OR_REC         0
#DEFINE ERROR_FILE_NOT_FOUND     2
#DEFINE ERROR_PATH_NOT_FOUND     3
#DEFINE SE_ERR_ACCESSDENIED     5
#DEFINE SE_ERR_OOM                 8
#DEFINE ERROR_BAD_FORMAT         11
#DEFINE SE_ERR_SHARE             26
#DEFINE SE_ERR_ASSOCINCOMPLETE     27
#DEFINE SE_ERR_DDETIMEOUT         28
#DEFINE SE_ERR_DDEFAIL             29
#DEFINE SE_ERR_DDEBUSY             30
#DEFINE SE_ERR_NOASSOC             31
Local lcSampleDoc, lcDirectory, lcBuffer, lcWindow, lcError, lcResult
lcSampleDoc = GetFile("Docx,Doc", "Documento:", "Abrir", 0, "Abrir Archivo de Word")
* Mostrar mensaje si no se ha seleccionado un archivo de Word.
If Empty(lcSampleDoc)
  Messagebox("No ha seleccionado un archivo de Microsoft Word.", 48, "Ejemplo")
  Return
EndIf
* Mostrar mensaje si el archivo no existe.
If !File(lcSampleDoc)
  Messagebox("El archivo no existe.", 64, "Ejemplo")
  Return
EndIf
lcDirectory = ""
lcBuffer = Space(255)
* Encontrar la aplicación que abre el archivo, en este caso Microsoft Word.
lcResult = FindExecutable(@lcSampleDoc, @lcDirectory,@lcBuffer)
lcError = !(lcResult >= 32)
If lcError
  Do Case
    Case lcResult = OUT_OF_MEM_OR_REC
      Messagebox("Recursos o memoria insuficiente.", 64, "Ejemplo")
      Return
    Case lcResult = ERROR_FILE_NOT_FOUND
      Messagebox("El archivo no existe.", 64, "Ejemplo")
      Return
    Case lcResult = ERROR_PATH_NOT_FOUND
      Messagebox("Ruta de archivo no válida.", 64, "Ejemplo")
      Return
    Case lcResult = ERROR_BAD_FORMAT
      Messagebox("Formato ejecutable no válido.", 64, "Ejemplo")
      Return
    Case lcResult = SE_ERR_NOASSOC
      Messagebox("No se enconbtró asociación para el tipo de archivo.", 64, "Ejemplo")
      Return
  EndCase
EndIf
* Abrir el archivo seleccionado.
lcWindow = GetActiveWindow()
lcResult = ShellExecute(lcWindow, "Open", lcSampleDoc, Null, lcDirectory, SW_SHOWMAXIMIZED)
lcError = !(lcResult >= 32)
If lcError
  Do Case
    Case lcResult = OUT_OF_MEM_OR_REC
      Messagebox("Recursos o memoria insuficiente.", 64, "Ejemplo")
      Return
    Case lcResult = ERROR_FILE_NOT_FOUND
      Messagebox("El archivo no existe.", 64, "Ejemplo")
      Return
    Case lcResult = ERROR_PATH_NOT_FOUND
      Messagebox("Ruta de archivo no válida.", 64, "Ejemplo")
      Return
    Case lcResult = SE_ERR_ACCESSDENIED
      Messagebox("Acceso denegado al archivo.", 64, "Ejemplo")
      Return
    Case lcResult = SE_ERR_OOM
      Messagebox("No hay suficiente memoria para completar la operación.", 64, "Ejemplo")
      Return
    Case lcResult = ERROR_BAD_FORMAT
      Messagebox("Formato ejecutable no válido.", 64, "Ejemplo")
      Return
    Case lcResult = SE_ERR_SHARE
      Messagebox("Ha ocurrido una violación al compartir archivo.", 64, "Ejemplo")
      Return && Podría abrirse el archivo de sólo lectura.
    Case lcResult = SE_ERR_ASSOCINCOMPLETE
      Messagebox("La asociación del nombre de archivo está incompleta o no es válida.", 64, "Ejemplo")
      Return
    Case lcResult = SE_ERR_DDETIMEOUT
      Messagebox("No se podría completar la transacción de intercambio de datos dinámicos" + Chr(13);
      + "debido a que se requiere más tiempo.", 64, "Ejemplo")
      Return
    Case lcResult = SE_ERR_DDEFAIL
      Messagebox("Falló la transacción de intercambio de datos dinámicos.", 64, "Ejemplo")
      Return
    Case lcResult = SE_ERR_DDEBUSY
      Messagebox("La transacción de intercambio de datos dinámicos" + Chr(13);
      +"no pudo completarse debido a que otras transacciones" + Chr(13);
      +"de intercambio de datos dinámicos se están procesando.", 64, "Ejemplo")
      Return
    Case lcResult = SE_ERR_NOASSOC
      Messagebox("No se enconbtró asociación para el tipo de archivo.", 64, "Ejemplo")
      Return
  EndCase
EndIf
Clear Dlls
Respuesta
1
Lamentablemente no estoy en mi casa y no puedo investigar y nunca he trabajado con algo así, así que responderte sería aventurado, hay una sentencia que no me acuerdo el nombre que ejecuta comandos del sistema operativo, con esa sentencia y la ruta del archivo puedes ejecutar el .doc, disculpa esa

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas