cosmobob
Messages postés700Date d'inscriptionmardi 30 décembre 2003StatutMembreDernière intervention27 janvier 20094 28 oct. 2004 à 18:31
salut,
ton probleme vient ss doute d'ailleurs :)
il faut plus de code ...
sinon tu peux toujours essayer de remplacer strcmp par le code suivant (mais normalement ca ne va rien resoudre, car ton probleme doit venir d'ailleurs...) :
int stringcompare(register const char* s1,register const char* s2)
{
while (*s1 == *s2++)
if (*s1++ == 0)
return (0);
return (*s1 - *(s2 - 1));
}
a++ ;)
Vous n’avez pas trouvé la réponse que vous recherchez ?
goutbouyo
Messages postés429Date d'inscriptionmardi 6 juillet 2004StatutMembreDernière intervention12 janvier 2008 28 oct. 2004 à 18:50
C'est cool y a du monde intéresé là !!!
Voila la fonction :
//***************************************************
//CONTROLE MOT DE PASSE
//***************************************************
// Procédure de gestion de la boite de dialogue
LRESULT CALLBACK MainProc(HWND Dlg2,UINT message,WPARAM wParam,LPARAM lParam)
{
int Select;
switch(message)
{
case WM_INITDIALOG:
hDlg = FindWindow(fenetre,NULL);
EnableWindow(hDlg,FALSE);
Sleep(1000);
SetForegroundWindow(Dlg2);
hCtrl=GetDlgItem(Dlg2,IDC_EDIT);
PostMessage(Dlg2, WM_NEXTDLGCTL, (WPARAM) hCtrl, 1);
return TRUE;
case WM_COMMAND:
Select=LOWORD(wParam);
switch(Select)
{
case IDOK:
GetDlgItemText(Dlg2,IDC_EDIT,ligne,6);
//SI BON MOT DE PASSE
if (strcmp(ligne,pass)==0)
{
MessageBox(NULL, "Accés autorisé\nProtection désactivée", "Succés",MB_OK| MB_ICONINFORMATION);
//SI MAUVAIS MOT DE PASSE
else
{
entree=0;
PostMessage(hDlg,WM_CLOSE,0,0);
MessageBox(NULL, "Mot de passe erroné\nDésolé ...", "Erreur",MB_OK| MB_ICONWARNING);
DestroyWindow (Dlg2);
Intercepte();
}
par :
GetDlgItemText(Dlg2,IDC_EDIT,ligne,sizeof ligne);
et ça :
char ligne[10];
par ça :
char ligne(256];
> J'ai toujour le même problème ...
Je viens de voir ça :
strcmp effectue une comparaison des deux chaînes s1 et s2.
La comparaison débute avec le premier caractère de chaque chaîne et continue avec les suivants, jusqu'à ce que des caractères de même rang soient différents ou que l'une des chaînes soit terminée.