Bonjour,
J'ai un probl�me avec un projet dans lequel je mixe des chaines de caract�res Unicode et ANSI.
Ce projet vient d'�tre port� de VC6 vers VC8.
J'essaie d'afficher une chaine de caract�res Unicode dans un contr�le CStatic d'une CDialog, sans avoir d�fini les constantes _UNICODE et UNICODE :
Dans un projet de test, lui aussi port� de VC6 vers VC8, il n'y a aucun soucis. Je passe une chaine de caract�res chinois � SetDlgItemTextW, et la vois bien s'afficher sur le CStatic. (Pas de d�finition de _UNICODE et UNICODE ici non plus).
Code : S�lectionner tout - Visualiser dans une fen�tre � part SetDlgItemTextW(this->m_hWnd, IDC_STATIC_WEBSITE,szBuf);
1�re piste :
Je suppose que la cr�ation de CDialog et de n'importe quel contr�le avec les MFC fait appel "dans la cave" � CreateWindowEx. Je suppose aussi que pour afficher des caract�res unicode sur mon contr�le, il faut qu'il ai �t� cr�e avec CreateWindowExW. (dites moi si j'ai faux jusqu'ici). Donc, si mon raisonnement est bon, avec un outil type IDA (desassembleur) je devrais trouver une trace de CreateWindowExW, dans le binaire pour lequel l'affichage de caract�res unicode fonctionne ....
Ce n'est pas le cas, par contre je vois bien SetDlgItemTextW ...
Auriez-vous une explication ??
Et Deuxieme question comment pourrais-je forcer l'appel de CreateWindowExW pour la cr�ation des controles qui afficheront des caracteres unicode ??
++
Fred
Partager