IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual C++ Discussion :

Comportement tr�s �trange pour CString


Sujet :

Visual C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    76
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 76
    Par d�faut Comportement tr�s �trange pour CString
    Bonjour � tous,

    Je suis bloqu� depuis ce matin sur un probl�me assez .. �nervant..

    Quand je d�clare un CString, il est directement remplit avec le texte "Yes", ce n'est pas un �norme probl�me, mon �norme probl�me vient du fait que la fonction Empty() est tout simplement ignor�e, aucun effet.
    Idem pour une simple allocation = "";

    Quand je trace en mode debug, la string g�n�r�e semble �tre une cstring ATL, or je pensais utiliser des cstring MFC, cel� ne joue peut �tre pas dans mon probl�me mais on ne sait jamais..
    Je finis par dire qu'aussi bien ATL que MFC sont link� en static..

    Est ce que quelqu'un � une id�e voir m�me un d�but de piste?
    N'h�sitez pas si je ne suis pas clair, j'ai certaine difficult�s � d�crire ce probl�me....

    Merci � vous,

    Francois

  2. #2
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut,
    cette valeur n'arrive pas (et ne peut arriver) toute seule ...
    il faut chercher dans le contexte d'utilisation de cette CString.
    par exemple :
    dans une boite de dialogue si celle-ci est rattach�e a un contr�le
    un UpdateData peut changer sa valeur.
    mais bon c'est un exemple....

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    76
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 76
    Par d�faut
    Hello,

    Merci pour la r�ponse, malheureusement, les CString qui ont ce comportement n'ont pas toutes un lien avec du GUI, donc pas non plus d'UpdateData();

    Au niveau du contexte d'utilisation, m�me probl�me, il y a un peu de tout.
    Le contexte le plus fou est quand m�me une d�claration sans allocation en tout d�but de fonction, premi�re instruction, et m�me l�, je d�marre avec le fameux "Yes".

    J'imagine bien que cette valeur ne vient pas toute seule, mais je ne vois absolument pas d'o� cela pourrait venir..
    D'autres id�es?


    Francois

  4. #4
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    comment veux tu que l'on r�ponde � �a sans inspecter ton code ?
    raisonnement logique � suivre :
    ce comportement est impossible par d�faut, donc �a vient forcement de mon code que je vais �plucher pour trouver.
    une recherche g�n�rale sur le mot "Yes" dans ton projet me semble un pr�alable.

  5. #5
    Membre extr�mement actif
    Avatar de randriano
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 221
    Par d�faut
    Citation Envoy� par squale32
    Quand je trace en mode debug, la string g�n�r�e semble �tre une cstring ATL, or je pensais utiliser des cstring MFC,
    Si, c'est correct, c'est CString �a !!
    Je dirai m�me plus "cette valeur n'arrive pas (et ne peut arriver) toute seule ..."
    randriano.dvp.com
    D�veloppeur. Product Owner [Agile]. Sites web, mobile apps, syst�me d'information (SI).

  6. #6
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    76
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 76
    Par d�faut
    Je veux bien balancer du code mais ce n'est pas local, j'ai ce comportement un peu partout (une trentaine de projets ), exemple:


    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    void CAA::fct_a()
    {
     CString sMyString;
    }
    Et bien juste avec cela, j'ai du "Yes" dans ma string
    La recherche sur le "Yes" n'a rien donn�, c'est un yes magique..

    Petite info que j'aurais peut-�tre du donner d�s le d�part, ce bug survient alors que je viens de migrer de vs6 � vs9 (vs2008) et apr�s installation du feature pack mfc/tr1.
    Bien que je ne vois pas ce que �a pourrait changer, pensez vous que �a joue?


    Je comprends vraiment pas ce qu'il se passe..

  7. #7
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Essaie de faire �a au d�marrage, dans ton main (ou si tu es dans un prog graphique, dans le constructeur de ta CWinApp). Je pense que le probl�me ne devrait "pas encore" se produire.

    En fait, je pense qu'un truc modifie l'instance partag�e de CString vide et la remplace par "Yes".
    Par exemple, un strcpy() malheureux sur une CString avec un cast qui vire le const... (et selon toute probabilit�, un cast C-Style plut�t qu'on const_cast )
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  8. #8
    Membre �m�rite
    Avatar de Spout
    Profil pro
    Ing�nieur syst�mes et r�seaux
    Inscrit en
    F�vrier 2007
    Messages
    904
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France, Val d'Oise (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieur syst�mes et r�seaux

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 904
    Par d�faut
    Citation Envoy� par squale32 Voir le message
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    void CAA::fct_a()
    {
     CString sMyString;
    }
    Et bien juste avec cela, j'ai du "Yes" dans ma string
    Une red�finition de la classe CString qui traine ?

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. DateTime comportement tr�s �trange
    Par pjmorce dans le forum C#
    R�ponses: 7
    Dernier message: 25/11/2013, 12h25
  2. Comportement boucle WHILE tr�s �trange
    Par czar1983 dans le forum C
    R�ponses: 18
    Dernier message: 18/06/2013, 09h43
  3. R�ponses: 0
    Dernier message: 18/11/2012, 20h00
  4. [XL-2010] Comportement tr�s �trange
    Par jpclabaux dans le forum Macros et VBA Excel
    R�ponses: 3
    Dernier message: 02/02/2012, 00h19
  5. Comportement �trange pour des ComboBox dans un tableau
    Par Shaaay dans le forum Windows Forms
    R�ponses: 1
    Dernier message: 25/04/2008, 17h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo