Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1645 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  petit probleme de c/cpp ... une exception que je ne comprends pas

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

petit probleme de c/cpp ... une exception que je ne comprends pas

n°315534
blackgodde​ss
vive le troll !
Posté le 22-02-2003 à 16:13:52  profilanswer
 

voici donc mon bout de code ou se produit l'exception :
 

Code :
  1. switch(NetMess->MessType)
  2.    {
  3.    case MESSTYPE_RECV:
  4.     {
  5.      ProceedRawData(NetMess->Data, NetMess->cbData);
  6.      delete NetMess->Data;
  7.      delete NetMess;
  8.     } break;
  9.    case MESSTYPE_CO:
  10.     {
  11.      OnConnect();
  12.      // SetWaitableTimer
  13.     }
  14.     break;
  15.    case MESSTYPE_DECO:
  16.     {
  17.      Connect("irc.quakenet.org", 6667, hNewMess, TRUE);
  18.     } break;


 
l'exception se produit sur le break; de la ligne avant case MESSTYPE_DECO:
g donc executer le prog en pas a pas pour essayer de mieux comprendre
 
donc le prog a continuer a s'executer dans la procédure OnConnect (lorsque l'exception s'est produite, NetMess->MessType etait egal à MESSTYPE_CO), voici son code :
 

Code :
  1. void CIrcProto::OnConnect(void)
  2. {
  3. char* Mess;
  4. Mess = new char[strlen(Cfg.BotName)+6];
  5. wsprintf(Mess, "NICK %s", Cfg.BotName);
  6. SendMessCrLf(Mess);
  7. delete Mess;
  8. Mess = new char[strlen(Cfg.BotName)+6];
  9. wsprintf(Mess, "NICK %s", Cfg.BotName);
  10. SendMessCrLf(Mess);
  11. delete Mess;
  12. SendMessCrLf("USER WarBot WarBot WarBot :WarBot" );
  13. SendMessCrLf("PRIVMSG Q@CServe.quakenet.org :AUTH CDN-DeathLord xxxxxxxxxxx" );
  14. Mess = new char[strlen(Cfg.Chan)+strlen(Cfg.ChanKey)+10];
  15. wsprintf("JOIN %s %s", Cfg.Chan, Cfg.ChanKey);
  16. SendMessCrLf(Mess);
  17. delete Mess;
  18. }


 
et, donc, lorsque le prog est arrivé à wsprintf("JOIN %s %s", Cfg.Chan, Cfg.ChanKey); il a brusquement sauté au break de tout a l'heure pour faire son exception.
 
ah! oui, l'exception etait :  
 
Unhandled exception at 0x77e1020b in WarBot2.exe: 0xC0000005: Access violation writing location 0x004320a4.
 
et mon compilateur est vc++7 (.net)
 
si qq1 y comprend qqchose, merci de m'expliquer :)


---------------
-( BlackGoddess )-
mood
Publicité
Posté le 22-02-2003 à 16:13:52  profilanswer
 

n°315536
blackgodde​ss
vive le troll !
Posté le 22-02-2003 à 16:15:56  profilanswer
 

Cfg.Chan et Cfg.ChanKey sont toutes 2 des chaines d'une dizaine de caractères chacunes et terminées par un 0


---------------
-( BlackGoddess )-
n°315538
verdoux
And I'm still waiting
Posté le 22-02-2003 à 16:18:57  profilanswer
 

Faut mettre:
wsprintf(Mess,"JOIN %s %s", Cfg.Chan, Cfg.ChanKey);

n°315541
blackgodde​ss
vive le troll !
Posté le 22-02-2003 à 16:23:25  profilanswer
 

mouarf le boulet :p jme disais ke ca venait de la car en effet lorsque je supprimais cette ligne ca marchait bien ...
 
une superbe erreur d'inattention ca ...
 
mais par contre je ne comprends pas pourquoi l'exception n'est survenue qu'apres ? p-e un pb d'ecrasement de la mémoire par wsprintf qui a fait que le switch ne pouvait plus lire la mémoire dont il avait besoin comme il faut ...
 
merci bcp en tt ca :)


---------------
-( BlackGoddess )-

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  petit probleme de c/cpp ... une exception que je ne comprends pas

 

Sujets relatifs
Problème de compilationproblème avec mes sessions
cvs, problème de branchencore un probleme de socket
[C,C++ ] lire sur un port usb, petit prb....Probléme avec 'Alike'
[JAVA] - Projet d'orienté Objet - Problème clair & détaillé - Bloqué[Résolu][Php] Problème explorateur de fichiers (lecteur réseau)
Probleme de bufferproblème incroyable.... [RESOLU]
Plus de sujets relatifs à : petit probleme de c/cpp ... une exception que je ne comprends pas


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR