-
Msxml : perte memoire ?
bonjour
je susi sous Borland builder 5, update pack 1.
je traite des fichiers xml via le composant msxml 4.0 (xmldocument40) . mon application prend de plus en plus de mémoire à chaque utilisation d'un fichier xml (j'utilise la methode load)... j'utilise les smart pointeur (CoFreeThreadedDOMDocument40::Create();).
je ne vois pas comment forcer les liberation de le mémoire.
j'ai tenté de changer de parser en voulant utiliser le xmlpartner version 2.6 mais impossible de compiler les paquets...peuvent ils etre utilisé sous BC5 ?
j'essaie de trouver une solution qui handicape bien mon application...
si jamais kkun a vu cela ?
merci d'avance
-
hello
pas de news sur ce post, je continue mon enquete.
j'ai utilisé codeguard et aucune réponse de sa part, tout va bien pour lui..
or en utilisant boundchecker, on trouve une perte mémoire sur l'utilisation de l'objet TVariantInParam.... EN GROS, sur la méthode load,
si on fait load("toto.xml"), on a une perte mémoire du fait qu'on ne déssaloue pas la mémoire qui a permis de créer le mot "Toto.xml"
si on fait load(TVariantInParam("toto.xml", true)), on n'en a pas...
en gros, dans le constructeur des TVariantInParam, si on passe un BSTR, il alloue la mémoire par defaut, or il ne l'a dessaloue pas... du coup, on passe le paramètre true, pour dire c'est notre programme qui le dessaloue...
ca ne résoud pas toute ma perte mémoire.. je suis obligé d'oublier la solution xml... on va passer au bon vieux fichier texte....
kkun a déjà eu ce souci ?
les DOM en mémoire ne se desalloue pas? je fais des load à foison et j'ai un eperte...