Pb RegisterClassEx

kyript
Messages postés
346
Date d'inscription
jeudi 7 avril 2005
Statut
Membre
Dernière intervention
26 mars 2012
- 14 juil. 2005 à 12:09
vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
22 août 2010
- 14 juil. 2005 à 13:49
Bonjour a tous

voila mon pb


quand je lance mon programme ( donc .exe créer sans probleme)

j'ai cette messagebox qui s'affiche


if (RegisterClassEx (&fenetre1) == false)
{
MessageBox(hWnd, "Probleme", "info", MB_OK);
return 0;
}


voila je ne comprend pas du tout pourquoi ca fait ca

merci d'avance

11 réponses

vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
22 août 2010
12
14 juil. 2005 à 12:18
On écrit plutot if(!RegisterClassEx(&fenetre1)), c'est plus joli
C'est que ta structure fenetre1 est mal remplie
0
cs_Joky
Messages postés
1787
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
31 janvier 2009
2
14 juil. 2005 à 12:19
déja on teste pas comme ça...

On utilise l'opérateur !



if(!RegisterClassEx(&fenetre1))

{

MsgBox...

return 0;

}

et s'il fait ça c'est parce que tu as mal renseigné ta classe de fenêtre

Montre nous ça :)

void Aurevoir( void ); //Bonne journée
0
cs_Joky
Messages postés
1787
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
31 janvier 2009
2
14 juil. 2005 à 12:20
Et Vecchio passe en tête au classement constructeur !!!

Fichtre sapristi

void Aurevoir( void ); //Bonne journée
0
kyript
Messages postés
346
Date d'inscription
jeudi 7 avril 2005
Statut
Membre
Dernière intervention
26 mars 2012

14 juil. 2005 à 12:23
voici ma classe

WNDCLASSEX fenetre1;

fenetre1.cbSize = sizeof(WNDCLASSEX);
fenetre1.style = CS_HREDRAW | CS_VREDRAW;
fenetre1.lpfnWndProc = WindowsProc;
fenetre1.cbClsExtra = 0;
fenetre1.cbWndExtra = 0;
fenetre1.hInstance = hInstance;
fenetre1.hIcon = NULL;
fenetre1.hCursor = NULL;
fenetre1.hbrBackground = hBackground;
fenetre1.lpszMenuName = "Menu";
fenetre1.lpszClassName = szClassName;
0

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

Posez votre question
cs_Joky
Messages postés
1787
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
31 janvier 2009
2
14 juil. 2005 à 12:26
utilise ça avant memset(&fenetre1, 0, sizeof(WNDCLASSEX);

comme ça tout les champs renseignés seront mis à 0

Mais s'il te met une erreur c'est quand même parce que tu n'as pas tout rempli

Il doit manquer hIconSm

void Aurevoir( void ); //Bonne journée
0
cs_Joky
Messages postés
1787
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
31 janvier 2009
2
14 juil. 2005 à 12:26
tout les champs non renseignés***

void Aurevoir( void ); //Bonne journée
0
kyript
Messages postés
346
Date d'inscription
jeudi 7 avril 2005
Statut
Membre
Dernière intervention
26 mars 2012

14 juil. 2005 à 12:33
ok merci je sais pas trop a quoi correspond la ligne memset(&fenetre1, 0, sizeof(WNDCLASSEX); mais j'en ai pas eu besoin. suffit simplement de renseigner tout les champs.
j'ai donc rajouter hIconSm et ca marche.

est ce comme ca pour toutes les class ?
0
vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
22 août 2010
12
14 juil. 2005 à 13:09
Joky, si tu remplis tous les champs un par un, ca ne sera a rien de tout mettre à zero au debut
0
cs_Joky
Messages postés
1787
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
31 janvier 2009
2
14 juil. 2005 à 13:10
Bé oui mais s'il est trop fénéant comme moi pour tout remplir surtout ceux qui servent pas trop, bé ca sert lol xD

même avec une structure WNDCLASS où y'en à moins j'lutilise donc euh vala lol :D

void Aurevoir( void ); //Bonne journée
0
kyript
Messages postés
346
Date d'inscription
jeudi 7 avril 2005
Statut
Membre
Dernière intervention
26 mars 2012

14 juil. 2005 à 13:41
ok merci je vai me renseigner sur memset()

++
0
vecchio56
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
22 août 2010
12
14 juil. 2005 à 13:49
Tu peux utiliser ZeroMemory
0