Вниз
Скачать: CL | DM;

Invalid pointer operation   Найти похожие ветки 

← →
Rise ©   (2003-05-29 12:57) [0]

Мастера помагите пожалйста я уже незнаю что мне делать
Я привел код который выполняеться но при закрыти( внимание только при закрытии самого приложения!) приложения выдает такое
"Debugger Exception Notification
Проект Project.exe вызвал исключение класса EInvalidPointer с сообщением "Invalid pointer operation""
Если данную процедуру неоднократно выполнять(раз так 30) то
при закрытии приложение(внимание! только призакрытии) выдает
"Application Error
Exception EAccessViolation in module Project.exe at 000024A0.
Access violation at address 004024A0 in module "Project.exe". Read of address 0195CF98."

Я пробавал комментировать строки пришел к следющему, если закоментировать строку
tmpdate:=tmpdate+1;//!!!
то код работает. Он так же не выдает ошибку при закрытии приложения если
я закоментирую строку
StringGrid1.cells[0,RecCount]:="TEST";

Помагите пожалуста я уже выбился из сил найти баг...
--------------------------------------------------------------
Var j,i:Byte;
tmpDate:TDateTime;
str:string;
Acol,Arow,Account,RecCount:Word;
BaseCal:array of string;
BaseNames:array of string;
BaseColors:array of TCOlor;
begin
RecCount:=1;
StringGrid1.CleanupInstance;//очищаю таблицу
col:=Tabel.DBGrid1.DataSource.DataSet.RecordCount;
StringGrid1.RowCount:=col*5+6;//

for i:=1 to 7 do Begin
SetLength(BufTable[i],(col+1)*5+1);
for j:=1 to (col+1)*5+1 do BufTable[i,j]:=RGB(255,255,255);
end;

SetLength(BaseCal,col);
SetLength(Basenames,col);
SetLength(BaseColors,col);i:=0;
//------------Данные из базы в массивы--------------------------
Tabel.DBGrid1.DataSource.DataSet.First;
While not Tabel.DBGrid1.DataSource.DataSet.Eof DO
Begin
BaseCal[i]:=Tabel.DBGrid1.DataSource.DataSet.Fields[9].Value
BaseColors[i]:=Tabel.DBGrid1.DataSource.DataSet.Fields[8].Value;
str:=Tabel.DBGrid1.DataSource.DataSet.Fields[1].Value;
Delete(str,Pos(" ",str),Length(str));
BaseNames[i]:=str;
DBGrid1.DataSource.DataSet.Next;
Inc(i);
end;
//-------------------------------------------------
i:=1;RecCount:=1;j:=0;
tmpDate:=EncodeDate(2002+setings.ComboBox2.ItemIndex,1+setings.ComboBox1.ItemIndex,1);
While i<=ColDayInMonth[setings.ComboBox1.ItemIndex+1] do BEGIN

Repeat
StringGrid1.cells[0,RecCount]:="TEST";

RecCount:=(col+1)*j+1;
tmpdate:=tmpdate+1;//если её закоментировать то код работает

Inc(i);
Until (DayOfTheWeek(tmpDate)=1)or(i>ColDayInMonth[setings.ComboBox1.ItemIndex+1]);

Inc(j);
RecCount:=(col+1)*j+1;

END;

BaseCal:=nil;
Basenames:=nil;
BaseColors:=nil;

newdata:=true;

end;


← →
Serginio   (2003-05-29 13:44) [1]

Во первых покажи код уничтожения формы (или что там у тебя уничтожается) "Debugger Exception Notification" не начто не наталкивает. Вчера ты не показав полного кода уничтожения приложения заставил людей чесать головы.


← →
Anatoly Podgoretsky ©   (2003-05-29 13:58) [2]

А сегодня привел кусок побольше, что бы совсем голову сломали.
Ответ воотще то простой, неверные указатели в программе, искать тяжело, проще писать правильно, тогда искать не потребуется.


← →
victorbur   (2003-05-29 14:23) [3]

Согласен с Anatoly Podgoretsky



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
14-26791
Basic
2003-05-22 21:33
2003.06.09
Что думает сын о матери в...


1-26570
HanIP
2003-05-28 13:23
2003.06.09
Пробелы Срочно плиззззз


3-26354
Vell
2003-05-20 15:26
2003.06.09
При вставке -


7-26816
denick
2003-04-04 19:01
2003.06.09
Люди как просканировать всё железо на компе?


11-26420
Vitalon
2002-09-01 18:27
2003.06.09
Помогите разобраться с TKOLRichEdit




   Наверх