In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Manejo de IE con OLE

Foro público de Xailer en español
Responder
Karl Svensson
Mensajes: 81
Registrado: Mar Oct 18, 2005 7:20 pm

Manejo de IE con OLE

Mensaje por Karl Svensson »

Estoy usando una instancia de Internet Explorer para acceder a un fichero
XML
IE := CreateObject( "InternetExplorer.Application" )
IE:Visible := .T.
IE:Navigate( http://miservidor )
A partir de aquí, necesito llevar la información mostrada en el explorador a
un objeto memo.
¿Se puede llegar al contenido del objeto IE o Guardar en un fichero o el
portapapeles?
Karl
jlalin
Mensajes: 926
Registrado: Sab Dic 25, 2010 11:10 pm

Manejo de IE con OLE

Mensaje por jlalin »

Karl,
> ¿Se puede llegar al contenido del objeto IE o Guardar en un fichero o el
> portapapeles?
Sí­, hay una propiedad IE:Document:body:innerText/innerHTML que devuelve
el contenido.
Saludos,
José Lalí­n
Karl Svensson
Mensajes: 81
Registrado: Mar Oct 18, 2005 7:20 pm

Manejo de IE con OLE

Mensaje por Karl Svensson »

Ya he probado esa opción, pero aparece error siempre que accedo al objeto
Document
IE:Document:body:innerHTML
IE:Document:body:innerText:innerHTML
IE:Document:body:innerText
IE:Document:Title
No funciona nunca!
El error es el siguiente:
TOLEAUTO:DOCUMENT(0)
Error InternetExplorer.Application/9 : DOCUMENT
Argumentos: ()
--------
Subsistema: InternetExplorer.Application
Código de error: 9
Estado: .F.
Descripción:
Operación: DOCUMENT
Argumentos:
Fichero:
Código error SO: 0
Pila de llamadas:
TOLEAUTO:DOCUMENT (0)
TASIENTOS:BUTTON3CLICK (72)
"José Lalín" <dezac@corevia.com> escribió en el mensaje
news:[email=439484c2@ozsrvnegro.ozlan.local...]439484c2@ozsrvnegro.ozlan.local...[/email]
>
> Karl,
>
>> ¿Se puede llegar al contenido del objeto IE o Guardar en un fichero o el
>> portapapeles?
>
> Sí, hay una propiedad IE:Document:body:innerText/innerHTML que devuelve
> el contenido.
>
> Saludos,
> José Lalín
jlalin
Mensajes: 926
Registrado: Sab Dic 25, 2010 11:10 pm

Manejo de IE con OLE

Mensaje por jlalin »

Karl,
no tengo IE instalado y no puedo probarlo, pero:
//---
IE := CreateObject( "InternetExplorer.Application" )
IE:Visible := .T.
IE:Navigate( http://miservidor )
//Mientras no termina de cargar
WHILE IE:Busy
ProcessMessages()
END
oDoc := IE:Get( "Document" )
oBody := oDoc:Get( "Body" )
oBody:innerText
....
oBody := Nil
oDoc := Nil
IE := Nil
//---
Saludos,
José Lalí­n
Karl Svensson
Mensajes: 81
Registrado: Mar Oct 18, 2005 7:20 pm

Manejo de IE con OLE

Mensaje por Karl Svensson »

Ya está!!!!!!!!!!!!!
Muy agradecido, hoy dormiré tranquilo.
"José Lalín" <dezac@corevia.com> escribió en el mensaje
news:[email=43948955@ozsrvnegro.ozlan.local...]43948955@ozsrvnegro.ozlan.local...[/email]
>
> Karl,
>
> no tengo IE instalado y no puedo probarlo, pero:
>
> //---
> IE := CreateObject( "InternetExplorer.Application" )
> IE:Visible := .T.
> IE:Navigate( http://miservidor )
>
> //Mientras no termina de cargar
> WHILE IE:Busy
> ProcessMessages()
> END
>
> oDoc := IE:Get( "Document" )
> oBody := oDoc:Get( "Body" )
> oBody:innerText
>
> ...
>
> oBody := Nil
> oDoc := Nil
> IE := Nil
> //---
>
> Saludos,
> José Lalín
carlos
Mensajes: 126
Registrado: Mié Feb 02, 2005 7:31 pm

Manejo de IE con OLE

Mensaje por carlos »

Yo continuo con el error, me podria decir cual es el motivo
Código de error: 9
Estado: .F.
Descripción:
Operación: DOCUMENT
Argumentos:
Fichero:
Código error SO: 0
Pila de llamadas:
TOLEAUTO:DOCUMENT (0)
"José Lalín" <dezac@corevia.com> escribió en el mensaje
news:[email=43948955@ozsrvnegro.ozlan.local...]43948955@ozsrvnegro.ozlan.local...[/email]
>
> Karl,
>
> no tengo IE instalado y no puedo probarlo, pero:
>
> //---
> IE := CreateObject( "InternetExplorer.Application" )
> IE:Visible := .T.
> IE:Navigate( http://miservidor )
>
> //Mientras no termina de cargar
> WHILE IE:Busy
> ProcessMessages()
> END
>
> oDoc := IE:Get( "Document" )
> oBody := oDoc:Get( "Body" )
> oBody:innerText
>
> ...
>
> oBody := Nil
> oDoc := Nil
> IE := Nil
> //---
>
> Saludos,
> José Lalín
jlalin
Mensajes: 926
Registrado: Sab Dic 25, 2010 11:10 pm

Manejo de IE con OLE

Mensaje por jlalin »

Carlos,
suelta un botón en un formulario y pon este código en el evento OnClick:
METHOD Button1Click( oSender ) CLASS ...
LOCAL oIE
LOCAL oDoc
LOCAL oBody
oIE := CreateObject( "InternetExplorer.Application" )
oIE:Visible := .T.
oIE:Navigate( "http://www.google.com" )
//Esperar a que cargue la página
WHILE oIE:Busy
ProcessMessages()
END
oDoc := oIE:Get( "Document" )
oBody := oDoc:Get( "Body" )
MsgAlert( oBody:innerText )
oBody := Nil
oDoc := Nil
oIE := Nil
RETURN Nil
Saludos,
José Lalí­n
Responder