GetWindowText, Code::Blocks & Visual C++

Résolu
Lustuc Messages postés 30 Date d'inscription lundi 18 août 2008 Statut Membre Dernière intervention 20 octobre 2009 - 11 sept. 2008 à 22:44
Lustuc Messages postés 30 Date d'inscription lundi 18 août 2008 Statut Membre Dernière intervention 20 octobre 2009 - 12 sept. 2008 à 20:56
Bonjour à tous,

les mêmes lignes de code contenant "GetWindowText" fonctionnent sous Code::Blocks et pas sous Visual C++:

char

caption[255];

HWND handle;

........

GetWindowText(hwnd,caption,255);

printf(
"titre :%s\n\n", caption);

sous Code::Blocks ça me ramène le titre complet de la fenêtre
sous Visual C++ ça me ramène une seule lettre !

Merci d'avance pour votre aide...

4 réponses

racpp Messages postés 1910 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 15
11 sept. 2008 à 23:45
Salut,
Il parait que ton projet Visual C++ utilise UNICODE. Remplace la ligne du printf() par:
MessageBox(0,caption,0,0);
Si le message affiché contient le titre complet de la fenêtre alors tu devras changer l'option du projet concernant UNICODE pour le désactiver. Par défaut, Visual Studio 2005 ou 2008 utilise UNICODE.
3
racpp Messages postés 1910 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 15
12 sept. 2008 à 00:45
Je travaille avec la version 2005. Je pense que c'est pareil.
- Ouvrir le menu "Project".
- Choisir "Project Properties...".
- Dans le volet gauche de la boite qui s'ouvre, cliquer sur "Configuration Properties".
- Dans le volet droit, cliquer sur la ligne "Character Set" et choisir "Not Set".
- Cliquer sur "Ok" pour finir.
3
Lustuc Messages postés 30 Date d'inscription lundi 18 août 2008 Statut Membre Dernière intervention 20 octobre 2009
12 sept. 2008 à 00:18
Merci pour ta réponse,

mais comment fais-tu pour changer l'option du projet concernant UNICODE sour visual studio 2008?
0
Lustuc Messages postés 30 Date d'inscription lundi 18 août 2008 Statut Membre Dernière intervention 20 octobre 2009
12 sept. 2008 à 20:56
ça marche ! Merci beaucoup
0
Rejoignez-nous