Estoy realizando un programa con Dev-C++ 4.9.9.0, Sistema Operativo XP Profesional.
Hasta el día de ayer no presentaba problema de ejecución, ahora me el siguiente error, y no se, a que se debe:
Código:
Tengo una entrada de datos y por radio button se escoje la salida del resultado, el hecho es que el si apreto 5 ó 6 veces en diferentes radioo button el programa deja de responder, a esto en el Administrador de Tareas parte el programa con Uso de Memoria de 1636 KB, cuando selecciono los diferentes Radiobutton sube a unos 1716 KB, pero cuando llega al quinto selección el Uso de Memoria sube repentinamente a unos 2416 KB en este momento deja de funcionar.AppName: aserrio.exe AppVer: 0.0.0.0 ModName: ntdll.dll ModVer: 5.1.2600.0 Offset: 000036f9
Necesito saber que esta pasando, tengo que cambiar el compilador, si quieren ver el listado de argumentos que utilizo no hay problema.
En los radio button tengo procedimientos de ventana, los cuales consisten en fijar el cursor, en los eventos WM_LBUTTONDOWN cambio el cursor a una que simula que aprieta el radiobutton:
Código:
En WM_CREATE en el WinProc :LRESULT CALLBACK Radio1Proc(HWND rmc,UINT msj, WPARAM wp,LPARAM lp) { switch(msj) { case WM_SETCURSOR: SetCursor(lcr); return TRUE; case WM_LBUTTONDOWN: SetCursor(lcra); sf(Rad1);//-->function SetFocus() marca(Rad1,Rad2,Rad3,Rad4,Rad5); ew(VerVol,TRUE);//->function EnableWindow() return TRUE; case WM_KEYDOWN: if(wp == VK_TAB || wp == 40) sf(Rad2); if(wp == 38) sf(Cantidad); if(wp == 13) { marca(Rad1,Rad2,Rad3,Rad4,Rad5); ew(VerVol,TRUE); } break; } return CallWindowProc(NRad1Proc,rmc,msj,wp,lp); }
Código:
Si necesitan más datos pidan...Rad1 = CreateWindowEx(0,ctl[3]," m3",str_rad,20,197,45,15,hwnd,(HMENU)0,inst,NULL); Rad2 = CreateWindowEx(0,ctl[3]," p3",str_rad,20,220,41,15,hwnd,(HMENU)0,inst,NULL); Rad3 = CreateWindowEx(0,ctl[3]," pp",str_rad,20,245,40,15,hwnd,(HMENU)0,inst,NULL); Rad4 = CreateWindowEx(0,ctl[3]," P'm",str_rad,20,270,50,15,hwnd,(HMENU)0,inst,NULL); Rad5 = CreateWindowEx(0,ctl[3]," P''m",str_rad,20,295,52,15,hwnd,(HMENU)0,inst,NULL); NRad1Proc = (WNDPROC)SetWindowLong(Rad1,GWL_WNDPROC,(LONG)Radio1Proc); ProcRadio1 = (FARPROC)GetWindowLong(Rad1,GWL_WNDPROC);
Nos vemos.