Ir al contenido


Foto

Error "Invalid Pointer Operation" al trabajar con XMLDocument


  • Por favor identifícate para responder
4 respuestas en este tema

#1 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.469 mensajes
  • LocationMéxico

Escrito 13 febrero 2013 - 09:37

Hola

Tengo estas dos formas de "llenar" un XMLDocument.



delphi
  1.   XML := TXMLDocument.Create( nil );
  2.   XML.XML.Text := 'Contenido XML';
  3.   XML.Active := true;





delphi
  1.   XML := TXMLDocument.Create( nil );
  2.   XML.loadFromFile( 'Ruta:\Archivo.xml' );
  3.   XML.Active := true;



Pues bien, si utilizo la primer forma, se genera una linda excepción que dice así:

---------------------------
Anticipos
---------------------------
Invalid pointer operation.
---------------------------
Aceptar 
---------------------------


Pero en la segunda forma muestra ésto:

---------------------------
Prueba Anticipos
---------------------------
El Usuario no existe.
---------------------------
OK 
---------------------------


Alguien sabe como puedo resolver el asunto, éste error se genera hasta que "regreso" algún valor del XML, pero la única diferencia es la línea de como se "carga" el XML.  ^o| :( 8o| (li)

Saludos y gracias.

  • 0

#2 Sergio

Sergio

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.092 mensajes
  • LocationMurcia, España

Escrito 13 febrero 2013 - 10:08

En el primer caso podría ser porque no has creado ningún nodo en el xml, y la forma de luego buscar algo en el xml se basa en recorrer nodos.
  • 0

#3 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.469 mensajes
  • LocationMéxico

Escrito 13 febrero 2013 - 10:26

En el primer caso podría ser porque no has creado ningún nodo en el xml, y la forma de luego buscar algo en el xml se basa en recorrer nodos.


Algo por el estilo amigo Segio.

Esto se resolvió cambiando el tipo de variable de TXMLDocument a IXMLDocument y usando el método NewXMLDocument.



delphi
  1.   XML := NewXMLDocument; //Aquí el detalle
  2.   XML.XML.Text := 'Contenido XML';
  3.   XML.Active := true;



Saludos y gracias :)
  • 0

#4 cadetill

cadetill

    Advanced Member

  • Moderadores
  • PipPipPip
  • 994 mensajes
  • LocationEspaña

Escrito 13 febrero 2013 - 11:44

Que la variable tenía que ser IXMLDocument lo sabía, lo que desconocía es el NewXMLDocument. Eso tengo que problarlo yo en las GMLib a ver si se me terminan unos problemillas que tengo :p
  • 0

#5 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.469 mensajes
  • LocationMéxico

Escrito 13 febrero 2013 - 11:48

Que la variable tenía que ser IXMLDocument lo sabía, lo que desconocía es el NewXMLDocument. Eso tengo que problarlo yo en las GMLib a ver si se me terminan unos problemillas que tengo :p


Ojalá y se resuelvan amigo, éstos detalles son los que te bloquean por un buen rato.  :)

Saludos
  • 0




IP.Board spam blocked by CleanTalk.