bonjour,
J'aimerai tester si je suis en mode debug ou release.
J'ai bien essayé :
mais que je sois en debug ou release la condition #if (DEBUG) est de toute façon toujours vrais. Pourquoi?Code:
1
2
3
4
5
6 #if (DEBUG) ... #else ... #endif
Version imprimable
bonjour,
J'aimerai tester si je suis en mode debug ou release.
J'ai bien essayé :
mais que je sois en debug ou release la condition #if (DEBUG) est de toute façon toujours vrais. Pourquoi?Code:
1
2
3
4
5
6 #if (DEBUG) ... #else ... #endif
Bonjour,
Normalement #if DEBUG #else #endif fonctionne.
Il se peut par contre que la variable DEBUG soit définie même en configuration Release. Sous VS2005 pour vérifier, il faut aller dans les Propriétés du projet (double clic sur le répertoire Properties qui contient AssemblyInfo.cs) et vérifier dans l'onglet "Générer" que la case à cocher "Définir la constante DEBUG" est bien désactivée pour la configuration Release.
De plus VS affiche en gris les morceaux de code qui ne sont pas dans la condition.
En Debug Mode : MessageBox.Show("Test2"); est affiché en gris, en Release Mode c'est le contraire.Code:
1
2
3
4
5 #if DEBUG MessageBox.Show("Test"); #else MessageBox.Show("Test2"); #endif
Vérifie bien comme te l'a précisé Kaidan.
Bouton droit sur Projet => Propriétés (ou Properties) => Onglet Build => Définir Constante TRACE et/ou DEBUG.
Tu as aussi ce système pour la debug :
http://www.dotnetguru2.org/amethyste...&c=1&tb=1&pb=1