![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
RTE 204 [D7, WinXP]
Maxim____ © (2004-08-18 20:18:00)Здравствуйте, Мастера!
Никак не могу отловить ошибку, при закрытии программы вылезает
RTE 204(Runtime error 204)
Что трассировать не знаю, OnForm.close - пустая процедура.
Искал в сети, но упоминаний об этой ишибке довольно мало,
а объяснений вообще не удалось найти.
Может быть можно отлючить вывод этого сообщения? Хотя оно видимо генерируется не Delphi, а виндой.
Сделал эксперимент.
Написал
procedure TForm1.FormCreate(Sender: TObject);
var
.....
.....
begin
exit;
.........
........
.........
.........
end;
Запустил программу и сразу закрыл.
Т.е. програма вообще ничего не делает,
но при закрытии всё время RTE 204........
Anatoly Podgoretsky (2004-08-25 18:40:00) [1]Maxim____ (25.08.04 18:24) [9]
если это единственно, что ты изменил, то ошибка у тебя осталасть, только не проявляется.
Maxim____ (2004-08-25 18:24:00) [2]Убрал из uses ShareMem, не помню уже откуда оно там взялось.
теперь никаких RTE не вылазит.
DiamondShark (2004-08-24 13:05:00) [3]
> ЮрийК © (24.08.04 12:26) [7]
> "Anatoly Podgoretsky © (24.08.04 12:05) [6]
> Не порти Р, а если портишь то ищи в какой точке программы,
> не завидую."
>
> А какими средствами лучше ловить такое? CheckBounder или
> ещё что?
Известно какими: debug DCU, breakpoint и call stack.
ЮрийК (2004-08-24 12:26:00) [4]"Anatoly Podgoretsky © (24.08.04 12:05) [6]
Не порти Р, а если портишь то ищи в какой точке программы, не завидую."
А какими средствами лучше ловить такое? CheckBounder или ещё что?
Anatoly Podgoretsky (2004-08-24 12:05:00) [5]Не порти Р, а если портишь то ищи в какой точке программы, не завидую.
Maxim____ (2004-08-24 10:46:00) [6]шибка RTE 204 сменилась ошибкой RTE 217 ,
при одном и том же сообщении Invalid Pointer Operation.
Ошибка вылетает тут:
(но что её вызывает я не могу понять)
unit System
function _FreeMem(P: Pointer): Integer;
begin
if P <> nil then
begin
Result := MemoryManager.FreeMem(P);
if Result <> 0 then
тут-> Error(reInvalidPtr);
end
else
Result := 0;
end;
как найти виноватово или подавить это сообщение?
Alx2 (2004-08-19 05:54:00) [7]>Maxim____ (19.08.04 02:16) [3]
в help раздел "Fatal errors":
204: Invalid pointer operation
Ловить - включаем debug DCU's и, после остановки, по стеку ищем виноватого.
"Stop on Delphi exceptions" тоже нужно включить.
Maxim____ (2004-08-19 02:16:00) [8]совсем пустой проект, да и все другие никаких ошибок не выдают.
так что дело не в Delphi
Maxim____ (2004-08-19 00:24:00) [9]проект отнюдь не пустой, с кучей компонентов...
но все компоненты родные, vcl'овские,
ну и пара моих, на базе tpanel...
TUser (2004-08-18 22:09:00) [10]Раз уж просто пустой проект такое выдает - переставь Delphi. Потом винду.
PS. Вон сколько Максмов развелось-то ...