Bonjour,
dans un projet sous WinDev 8 je lit un flux XML et je stocke les données récupérées dans diverses variables dont plusieurs tableaux dynamique.
A la fin, je trace toutes les données récupérées pour vérifier quelles sont valides et jusque là tout va bien. Les données renvoyées sont les bonnes.
Mais lorsque je ferme le projet, une erreur W-Langage est générée:
Une erreur système inattendue est survenue.
Si cet incident se produit de manière systématique lorsque vous exécutez les mêmes manipulations, il est conseillé de transmettre au Support Technique Gratuit :
- une description des circonstances de l'incident
- les lignes de code, une fenêtre ou un projet permettant de reproduire le problème
- les informations techniques suivantes
Détails techniques :
Module : WDTST.EXE
Version du module : 8.00Bda
VI : 01-80315j
Adresse de base : 00000000
Erreur système : Access violation (GPF)
EIP = 00000001
OS : Windows XP ou .NET Service Pack 2(5.1.2600)
**********************************************
Informations techniques
Projet : Lecteur de flux XML AlphaAide
Dump de l'erreur du module <WD80VM.DLL> <8.00Jv>.
- Niveau : erreur fatale (EL_FATAL)
- Code erreur : 1020
- Code erreur WD55 : 0
- Pas de code d'erreur système
- Pas de message d'erreur système
- Que s'est-il passé ?
Une erreur système inattendue est survenue.
Si cet incident se produit de manière systématique lorsque vous exécutez les mêmes manipulations, il est conseillé de transmettre au Support Technique Gratuit :
- une description des circonstances de l'incident
- les lignes de code, une fenêtre ou un projet permettant de reproduire le problème
- les informations techniques suivantes
Détails techniques :
Module : WDTST.EXE
Version du module : 8.00Bda
VI : 01-80315j
Adresse de base : 00000000
Erreur système : Access violation (GPF)
EIP = 00000001
OS : Windows XP ou .NET Service Pack 2(5.1.2600)
- Infos de debug :
Registres :
EIP = 00000001 EBP = 00914330
EAX = 0093E900 EBX = 009410D0
ECX = 0093F698 EDX = 25F1B5D0
ESI = 00942320 EDI = 00000000
Pile des appels :
[WDTST.EXE (00000000), 8.00Bda, 01-80315j ] 00000001
[WDTST.EXE (00000000), 8.00Bda, 01-80315j ] 02D70091
Pile invalide
- Pas d'info attachée
- Identifiant dans le .err : 1020
Je pensais que cela était dû au fait que je ne libérait pas manuellement tous les tableaux dynamiques qui ont été générés alors à la fin du projet, je les libére tous mais du coup, la même erreur est générée lors de cette libération et non plus à la fermeture du projet. J'en ai déduit que la mémoire réservée par les tableaux était automatiquement libérée lors de la fermeture du projet. Seulement, cela ne répond pas à ma problématique pour autant.
Voici le code utilisé pour la libération de la mémoire:
// Libération des tableaux dynamiques utilisés
numClient = 0
numProduits = 0
nbProduits = Dimension(Tab_XML_Lu_Produits)
POUR numProduits = 1 A nbProduits
libérer Tab_XML_Lu_Produits[numProduits]:Propriétés:CodePropriété
libérer Tab_XML_Lu_Produits[numProduits]:Propriétés:Valeur
FIN
numClient = 0
numProduits = 0
nbClients = Dimension(XML_Lu_Clients)
POUR numClient = 1 A nbClients
nbProduits = Dimension(XML_Lu_Clients[numClient]:XML_Lu_Produits)
POUR numProduits = 1 A nbProduits
libérer XML_Lu_Clients[numClient]:XML_Lu_Produits[numProduits]:Propriétés:CodePropriété
libérer XML_Lu_Clients[numClient]:XML_Lu_Produits[numProduits]:Propriétés:Valeur
FIN
FIN
numClient = 0
numProduits = 0
nbClients = Dimension(XML_Lu_Clients)
POUR numClient = 1 A nbClients
libérer XML_Lu_Clients[numClient]:XML_Lu_Produits
FIN
Comment puis-je faire pour me débarrasser de cette erreur système?
Merci d'avance.
Nicolas ROBIN