Objet non initialisé (API Win32)

cs_Xs Messages postés 368 Date d'inscription mercredi 14 novembre 2001 Statut Membre Dernière intervention 1 septembre 2008 - 26 mars 2002 à 21:19
jcecchi Messages postés 117 Date d'inscription samedi 12 janvier 2002 Statut Membre Dernière intervention 14 janvier 2003 - 27 mars 2002 à 20:21
salut !

voici mon code, d'abord :

#include <windows.h>
#include <commctrl.h>
#include "resource.h"

LRESULT CALLBACK DlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam)
{
char* szlogin,*szpass;
switch(msg)
{
case WM_CLOSE:
DestroyWindow(hDlg);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
case WM_COMMAND:
switch(HIWORD(wParam))
{
case BN_CLICKED:
switch(LOWORD(wParam))
{
case IDOK:
MessageBox(hDlg,"Fonction non disponible pour le moment","Ce n'est qu'une version Alpha...",0 + MB_ICONASTERISK);
break;
case IDC_TEST:
GetDlgItemTextA(hDlg, IDC_LOGIN,szlogin,30);
GetDlgItemTextA(hDlg,IDC_PASS,szpass,30);
break;
case IDGET :
MessageBox(hDlg,"Fonction non disponible pour le moment","Ce n'est qu'une version Alpha...",0 + MB_ICONASTERISK);
break;
case IDC_ABOUT:
MessageBox(hDlg,"Programme d'echange de listes Warez\nRéalisé par Xcept\nCompilé et écris en C++ avec VC++\nghostoflove@caramail.com","About",0 + MB_ICONASTERISK);
break;
case IDC_CANCEL:
DestroyWindow(hDlg);
break;
}
}
break;
default:
return FALSE;
}
return FALSE;
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
HWND hdlg;
MSG Msg;

InitCommonControls();

hdlg = CreateDialog(hInstance,MAKEINTRESOURCE(IDD_DIALOG1), NULL, (DLGPROC) DlgProc);

SendMessage(GetDlgItem(hdlg,IDC_PROGRESS1),PBM_SETRANGE,0,MAKELPARAM (0, 100));

if(hdlg == NULL)
{
MessageBox(NULL, "Window Creation Failed!", "Error!",
MB_ICONEXCLAMATION | MB_OK);
return 0;
}

ShowWindow(hdlg, nCmdShow);
UpdateWindow(hdlg);

while(GetMessage(&Msg, NULL, 0, 0) > 0)
{
TranslateMessage(&Msg);
DispatchMessage(&Msg);
}
return Msg.wParam;
}

le probleme se situe dans la partie de proc : DlgProc : le GetGldItemTextA.

on me dit qu'il n'est pas initialisé !!

2 réponses

cs_Toobad Messages postés 14 Date d'inscription lundi 11 février 2002 Statut Membre Dernière intervention 14 novembre 2002
27 mars 2002 à 19:59
Essai de déclarer hDlg avant la proc ça devrait marcher
0
jcecchi Messages postés 117 Date d'inscription samedi 12 janvier 2002 Statut Membre Dernière intervention 14 janvier 2003 3
27 mars 2002 à 20:21
N'utilise pas GetDlgItemTextA, mais GetDlgItemText, et apres c'est vc++ qui se charge de choisir entre GetDlgItemTextA et GetDlgItemTextW (pour UNICODE).

Sinon c'est quoi exactement qui n'est pas initialise?
0
Rejoignez-nous