Форум: "Базы";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];
ВнизПереполнение стека, что это? Найти похожие ветки
← →
O l e g (2004-09-03 03:16) [0]Описание сути проблемы:
Действия происходили под W98.
При запуске программы выдалась ошибка на английском языке «Стек переполнен» и шестнадцатеричные числа.
Программа использует БД.
Может я не закрываю там что-нибудь.
Ошибка выскакивала только два раза, на разных версиях программы, а потом сразу же пропала сама собой. Хотя помнится при компиляции тоже один раз как то выдавал такое же, но сразу же прошло, под виндой ХП, я не придал этому значения.
Так, как избежать этой ошибки. Для это ошибка «темный лес», не знаю даже где искать. А вдруг повторится, моя первая можно сказать программа, которой пользоваться будут и не совсем хорошо работает. Помогите братья по разуму начинающему программисту.
Спасибо.
← →
sf © (2004-09-08 15:31) [1]Если числа где то равны 000000?? тогда это глючит Делфи
Выход из положения: если знаешь Debug то отладь область программы
← →
сергей1 (2004-09-08 15:43) [2]сложно искать ошибку, которая то есть то нет. Вот если бы она выскакивала относительно регулярно - то можно было бы отладчиком до причин докапаться. А вообще, если ты примерно знаешь место в твоем коде, где она вылазила - попробуй внимательно его просмотреть, можно и вообще сомнительные места переписать.
← →
Vlad © (2004-09-08 15:45) [3]Без кода трудно что либо понять.
Возможно какая-то процедура входит в рекурсию, или бесконечный цикл.
← →
Digitman © (2004-09-08 15:52) [4]
> на английском языке
гораздо катастрофичней была бы ситуация, если - на папуасском
"на английском" - ценнейшая инф-ция по сабжу !!
> при компиляции тоже один раз как то выдавал такое же
как раз "при компиляции" на английском сия беда и приключается ... а на папуасском - уже в ран-тайм ...
ты думаешь вообще что говоришь ? какая нафих еще "компиляция" ?! ты УЖЕ стартовал процесс !! когда получил это сообщение !!
> сразу же прошло
знач, "пронесло" .. это была явно не диарея
← →
MU © (2004-09-08 15:52) [5]вот пример (грубый)
procedure TForm1.Edit2Change(Sender: TObject);
begin
Edit2.Text := Edit2.Text + "1";
end;
← →
сергей1 (2004-09-08 16:22) [6]не издевайтесь над человеком
> Edit2.Text := Edit2.Text + "1";
у тебя это вызывает переполнение стека ?
2 oleg
пробуй погонять как следует, если ошибка вылезает на разных осях и разных компах, но не всегда, то значит в твоей проге время от времени наступают какие-то условия, приводящие к ней, потести ее как слудует и откопаешь ошибку
← →
MU © (2004-09-08 16:26) [7]>>сергей1 (08.09.04 16:22) [6]
я не издеваюсь
при попытке ввода в поле Edit1 возникает событие OnChange, в обработчике которого Edit1.Text опять меняется и, следовательно
возникает событие OnChange, в обработчике которого Edit1.Text опять меняется и, следовательно возникает событие OnChange, в обработчике которого Edit1.Text опять меняется и, следовательно Stack Overflow
← →
MU © (2004-09-08 16:31) [8]вот еще пример со StringGrid
"обработка" OnSelectCell:
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
StringGrid1.Col := 0;
end;
... Stack Overflow
т.е. если в обработчике события происходит изменения свойств объекта, которые вновь вызывают это событие
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.035 c