Page 1 of 1
classe TWord
Posted: Mon Jan 02, 2006 8:29 pm
by Fco_Ozuna
Feliz Año Nuevo a Todos!!
Porque no me funciona, necesito abrir un archivo de Word existente, hago lo siguiente y me arroja el siguiente error:
oWord = TOleAuto():New( "Word.Application" )
oWord:OpenDoc("Prueba.Doc")
OPENDOC: DISP_E_UNKNOWNNAME
y con:
oWord := TWord():New()
oWord:OpenDoc("Prueba.Doc")
oWord:Preview()
ocurre un GPF
called from OLEINVOKE(0)
called from TWORD:PREVIEW(392)
FW23, HARBOUR, BCC55
Gracias por su atencion..
Re: classe TWord
Posted: Tue Jan 03, 2006 6:42 pm
by fleal
Prueba esto
oWord:OpenDoc( DirDondeEstaElDocumento+"Prueba.Doc")
ó lo que sería lo mismo
oWord:OpenDoc( "C:\Docs\Prueba.Doc")
o como se quiera que se llame tu directorio donde está el archivo que quieres abrir.
Re: classe TWord
Posted: Tue Jan 03, 2006 8:12 pm
by Fco_Ozuna
Gracias por tu respuesta fleal, pero no me funciono!!!, y por lo que estuve leyendo, la clase: oWord=TOleAuto():New( "Word.Application" ), es de xHarbour, y yo utilizo Harbour, y no doy con bola, si se trata de crear un nuevo documento, modificarlo, previzualizarlo e imprimirlo, no hay problema, el problema lo tengo cuando el documento ya esta creado y lo quiero modificar desde la clase TWord, cualquier comentario será agradecido.
Gracias.
Re: classe TWord
Posted: Wed Jan 04, 2006 12:45 am
by Vikthor
Revisa si el método New de tu clase es similar a este :
Code: Select all
METHOD OpenDoc( cNombreDoc ) CLASS TWord
local sal := .t.
::oDocs := ::oWord:Get( "Documents" )
if file( cNombreDoc )
::oActiveDoc := ::oDocs:Invoke( "Open",cNombreDoc )
if valtype(::oActiveDoc) <> 'O'
sal := .f.
endif
else
sal := .f.
endif
::oTexto := ::oWord:Get( "Selection" )
::oOptions := ::oWord:Get("Options") // Vikthor
::oMailMerge := ::oActiveDoc:Get( "MailMerge") // Vikthor
::oTables := ::oActiveDoc:Get( "Tables") // Vikthor
::cNombreDoc := cNombreDoc
::nLinea := 0
::nCol := 0
::nPage := 0
::nYoffset := 0
::nXoffset := 0
::oSelection := ::oActiveDoc
::lstartpag := .t.
::lsetcm := .f.
::lOverflowing := .f.
::nlastrow := 0
::ctextoverflow := ''
return sal
Re: classe TWord
Posted: Wed Jan 04, 2006 1:13 am
by Fco_Ozuna
Gracias Vickthor por contestar.
Pues no, es diferente en las Datas y los Methodos que llama la clase, que veo es modificada por Ti, serias tan amable de decirme si la puedo descargar de alguna parte o pasarmela a mi correo
fco_ozuna@prodigy.net.mx, te lo agradeceria mucho.
Gracias....
Re: classe TWord
Posted: Wed Jan 04, 2006 1:47 am
by Vikthor
¡listo el pollo!... Enviada a tu cuenta de correo.
Posted: Wed Jan 04, 2006 7:42 am
by Antonio Linares
Vikthor,
Puedes publicarla en algún sitio, como
www.hyperupload.com para que la descargue quien la necesite ? gracias.
Posted: Wed Jan 04, 2006 3:31 pm
by Vikthor
Antonio :
Con mucho gusto, la voy a subir al sitio de DbWide que esta en
http://vikthor.com.mx
La clase funciona con xHarbour e ignoro si el código es complatible con Harbour.
Pero haciendo unos pequeños ajuste la clase debe ser compatible con ambos compiladores.