Bonjour,
A la fermeture d'une fenetre, je tente de détruire tout ses composant en faisant :L'erreur "EAccessViolation" apparait, Mes composants sont créés dynamiquement, et il semble que cette erreur vienne d'un acces à la memoire qui n'existe pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 i := ComponentCount-1; While i > 0 do begin if Components[i].Owner.Name = Self.Name then Begin try Components[i].Destroy; i := ComponentCount-1; except end; end Else Dec(i); End;
mon application travail en local et en reseau, il se trouve que cett erreur ne se produit qu'a la fermeture d'un dossier reseau (mais je ne vois pas pourquoi).
Petit test réalisé, les EAccessViolation semble apparaitre pour la destruction de composant de type "PageCOntrol"
m'a retourné des noms de composant de type: PC_4, PC_3 PC_2...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Components[i].name;
mais je n'arrive pas à les identifier d'avantage. Y-a-t-il une methode pour trouver d'avantages d'infos sur ses composants?
quels tests puis-je faire pour resoudre ces problemes d'acces memoire ou trouver quels composants son innaccessibles???
merci pour toute idee pour avancer
a bientot
eric
Partager