Dev-C++ v4.9.9.1. Windows project. Includani windows.h, stdlib.h i stdio.h.
Code:
LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
char *dir, *Bafer; int size, i=0; FILE *fAjl;
switch (message)
{
case WM_CREATE:
{
dir = (char *)malloc((MAX_PATH+20) * sizeof(char));
GetCurrentDirectory(MAX_PATH, dir);
strcat(dir, "\\pera.txt");
fAjl = fopen(dir, "r");
free(dir);
fseek(fAjl, 0, SEEK_END);
size = ftell(fAjl);
rewind(fAjl);
Bafer = (char *)malloc(size * sizeof(char));
while ((*(Bafer+i) = fgetc(fAjl)) != EOF) i++;
fclose(fAjl);
MessageBox(hwnd,Bafer,"Procitao",MB_OK);
free(Bafer);
break;
}
case WM_DESTROY:
PostQuitMessage (0);
break;
default:
return DefWindowProc (hwnd, message, wParam, lParam);
}
return 0;
}
Tvoj kod ubacen u handler forme pri WM_CREATE eventu. Samo deklaracije varijabli izbacene van switch statementa. Sve radi najnormalnije, tj. odma prilikom podizanja programa prikaze MessageBox naziva "Procitao", u kojem je ispisan sadrzaj ove pera.txt datoteke iz tekuceg direktorija.
Dakle ne znam sta da napravis osim da izbacis deklaracije negdje direktno u funkciju (ovo po zdravoj logici uopce ne bi trebalo pomoc, jer meni radi i sa deklaracijama unutar case-a). Ili batalis to smece od Visual C++-a.
A mozda si i negdje prije u programu krivo mallocirao memoriju ili nesto tog stila, pa sad imas sranja radi toga. Provjeri sve skupa.
[Ovu poruku je menjao z@re dana 30.03.2006. u 01:04 GMT+1]
Q: HSP56 Micromodem nece da radi kompjuter ga prepozna a kad treba da se konektujem nece ne daje ni znaka zivota. u cemu je problem.
A: Crko mozda od grmljavine mozda od spanaca. Uglavnom baci ga u WC solju jako povuci vodu. Skupi 5e i uzmi drugi i ne postuj temu na pogresno mesto.