Argh! Sad sam jos vise besan!
Misterija stoji u tome: KOOO je ugasio Range i Overflow checking?????
Prihvatio sam tvoj savet Milose i eto (zasucem rukave, ispucam prste)... Opalim jedan Count:Integer; promenljivu, napravim procedure:
Code:
procedure Add1;
begin
Count := Count+1;
Form1.Label17.Caption := IntToStr(Count);
end;
procedure Rem1;
begin
Count := Count-1;
Form1.Label17.Caption := IntToStr(Count);
end;
Stavim tamo gde se nalaze one uobicajene radnje Bla := TBla.Create;...
Postavim ja tako 10 procedura Add1 i 10 procedura Rem1, i kada se pomirim s time da je rezultat 0 i da cu jos morati da cupam kosu oko ovog problema, pokrenem program, a Label17 koji sam stavio na form kaze "10"!!!!
10???????? Lele, Kuku!
Kad ono pogledam u options-u da je Range checking i Overflow checking iskljuceno!!!
Divno... Ukljucim obe opcije, pokrenem program i on me pozdravi sa jednom porukom RangeCheck error i sa dve poruke Division by Zero... Popravim one greske koje sam napravio, i nastavim sa izvrsavanjem programa... A ono opet isto...
UF! Cudna je kompjuter biljka!
Sav sam kod stavio u zagrade {} i postepeno ih uklanjao, pa dosao do krivca:
Code:
Server.Active := True;
Ako izbrisem ovaj kod, sve ce biti OK, nema memory leak-a, ali onda ne mogu da primam pozive, mogu samo da ja zovem nekoga.
Kasnije sam pronasao file audiosettings.dat koji stoji u folderu gde se moj EXE nalazi, taj file koriste VoIP komponente za cuvanje podesavanja o koriscenom kodeku za kompresovanje zvuka koji se prenosi. Njega sam izbrisao, i sta se desi??? Nema vise memory leak-a, ali sta onda? Ogranicen sam na upotrebu PCM kodeka (onaj sto "kompresuje" zvuk od 3 sekunde na 100KB), tako da je neupotrebljiv! A kada podesim da koristi Speex kodek, (autor komponenata ga preporucuje zbog veoma velikog kvaliteta i stepena kompresije), komponenta sacuva ta podesavanja ponovo u audiosettings.dat, i opet memory leak...
Sta drugo da radim... Poslao sam mail nekom Ivanu Babikovu (onaj koji je napravio te komponente), pa cemo da vidimo sta cemo dalje (ne verujem da je lik napravio to chudo a da nije proverio sta radi).
U medjuvremenu, ako ima neka dobra dusa da testira da li se ovaj memory leak javlja kod njega? :-)
Spakovao sam program u ZIP:
www.milicevici.com/homeworks/direcom.zip - ima negde oko 625 KB...
Sada me malo bole prsti i glava pa idem da prilegnem :-)... Hvala na pomoci do sada...