Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.06.09;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "Основная";
Текущий архив: 2003.06.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.071 c
3-26366
Apachi
2003-05-21 07:39
2003.06.09
Дерево


14-26740
asafr
2003-05-22 17:20
2003.06.09
Сегодняшняя питерская байка


14-26686
___ALex___
2003-05-25 14:38
2003.06.09
Дифуравнения


1-26431
Avsam
2003-05-28 17:48
2003.06.09
TStrings & TStringList


7-26814
Юра
2003-04-02 03:16
2003.06.09
Сканер штрих-кода





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский