bonjour,
J'utilise la classe TClientSocket (dans System.Win.ScktComp) avec laquelle je suis confronté à un problème lorsque je détruit l'objet.
Je créé le socket par:Je le détruit par :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 ClientSocket1 := TClientSocket.Create(nil); ClientSocket1.OnError:= ClientSocket1Error; ClientSocket1.Host := '192.168.0.1'; ClientSocket1.Port := 502; ClientSocket1.Active:=true;Dans mon cas l'adresse IP n'existe pas et donc lorsque je détruit l'objet, le thread qui a été créé par l'API n'est pas détruit et alors une exception apparait quelques secondes après la destruction du socket :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ClientSocket1.Close; ClientSocket1.free;
Exception 'first chance' à $00000000. Classe d'exception $C0000005 avec un message 'access violation at 0x00000000: read of address 0x00000000'. Processus MyAPP.exe (5452)
Si quelqu'un a une idée pour détruire le thread du socket en même temps qu'on détruit le socket ??
En revanche je n'ai pas de problème lorsque je quitte mon application.
Merci
Franck
Partager