Prob grave avec Visual...

cs_Nuage Messages postés 6 Date d'inscription jeudi 21 février 2002 Statut Membre Dernière intervention 22 février 2002 - 21 févr. 2002 à 19:17
cs_Nuage Messages postés 6 Date d'inscription jeudi 21 février 2002 Statut Membre Dernière intervention 22 février 2002 - 22 févr. 2002 à 17:14
Voila, j'ai un grave problème avec le debug de Visual.
Je fait un bête code source, avec une fonction pour créer un élement d'une pile, et une fonction pour virer un élement de cette même pile. Rien de bien sorcier, quoi. Sauf que.
En lançant le programme tel quel, il s'execute sans problème, tout marche. Sauf que, à chaque free que je fait, j'ai droit à une belle fenetre windows me signal un "debug assertion failure blablabla". Le programme marche quand même, mais c'est stressant de devoir cliquer sur "Ignorer" toutes les 20 secondes... J'ai vérifié, le free est bien effectué quand même !! De plus, je me suis rendu compte que si je place le malloc créant l'élément, et le free le virant dans la même fonction, dans ce cas la je n'ai pas de message d'erreur...
Enfin, j'ai même essayé avec un niveau de debug de 0, et il fait exactement pareil.

Si quelqu'un pouvait m'aider... Je vais tuer Visual, moi, si ça continue !!

(je précise que ça ne vient pas de ma config, vu que j'ai eu le même problème sur trois ordis différent, chacun tournant sous un OS différent)

Merci de votre aide...

Nuage

8 réponses

cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
21 févr. 2002 à 20:25
Je pense que tu essayes de désallouer un truc que
tu n'as pas alloué. Quelques sont les grandes
lignes de ton source ?
0
cs_Nuage Messages postés 6 Date d'inscription jeudi 21 février 2002 Statut Membre Dernière intervention 22 février 2002
21 févr. 2002 à 20:40
Ah si, c'est parfaitement alloué... Ce n'est pas une erreur de compilation ni même d'execution ! Le programme marche parfaitement...

Pour résumer rapidement ce que je fait:
- création d'un élément d'une pile dans lequel je place des information
- lecture des informations de l'element, et destruction de l'element

Tout marche bien, les informations sont bien récupérées, et détruites aprés le free... Toutefois, lors de l'execution, lorsque le programme en arrive à la ligne du free, il m'invente une erreur de debug. Je ne sais pas a quoi ça correspond, car si je fait le choix d'ignorer l'erreur (c'est une boite de dialogue windows avec les habituels boutons ignorer, reessayer, abandonner) le programme continue son execution tranquillement, sans aucun problème... C'est pour ça que je craque un peu: avoir une erreur quand on fait un truc faux, ok; mais quand le code est sans faute, c'est vexant...
0
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
22 févr. 2002 à 08:22
Tu peux essayer un truc : tu compiles ton projet en Mode Release (ca doit être menu Build / Set Active Configuration) et tu l'exécutes.
Si Windows fait une erreur du style "Memory Access Violation" c'est que ton code à un problème.
0
cs_Nuage Messages postés 6 Date d'inscription jeudi 21 février 2002 Statut Membre Dernière intervention 22 février 2002
22 févr. 2002 à 15:05
Ok, bah j'ai essayé, et tout roule sans erreur aucune...

Donc ça me rassure, c'est bien Visual qui part en vrille. Arg. Dire qu'on est obligé de taffer avec ce compilateur pour de nombreuses années, encore...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
22 févr. 2002 à 15:58
Tu peux peut-être résoudre le problème en installer le Service Pack 5.0 pour Visual Studio.
0
cs_Nuage Messages postés 6 Date d'inscription jeudi 21 février 2002 Statut Membre Dernière intervention 22 février 2002
22 févr. 2002 à 16:39
Merci, ça m'a bien aidé...

Au fait, ça fait quoi, précisement, de mettre Release à la place de Debug ?

Bon, je vais essayer d'installer le service Pack, on va bien voir ce que ça va donner...

(si mon mess précédent identique est passé, désolé, c t une erreur.... mea culpa)
0
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
22 févr. 2002 à 17:10
Tu passes en mode release quand le développement de ton programme est terminé. La taille de l'exécutable déminue puisqu'il n'y a plus les informations de debug dans l'EXE et on peux l'utiliser sur toutes les machines. En mode debug, l'EXE a besoin de DLL seulement installées quand VC++ est installé.
0
cs_Nuage Messages postés 6 Date d'inscription jeudi 21 février 2002 Statut Membre Dernière intervention 22 février 2002
22 févr. 2002 à 17:14
Ok Merci beaucoup de ton aide... ça m'a permis de ne pas abattre Visual et de continuer a taffer.

Merci !
0
Rejoignez-nous