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

если использовать setlength призакрытии вылетает ошибка.   Найти похожие ветки 

← →
Tundra   (2002-12-12 09:30) [0]

Такой глюк - если при открытии главной формы приложения использовать setlength, то потом при ее закрытии и соот-но выходе из приложения вылетает ошибка.
На обычном (не динамическом) массиве такого нет.
Кто знает в чем дело? Спасибо.


← →
JohnnyJ ©   (2002-12-12 10:16) [1]

а поподробнее?


← →
Tundra   (2002-12-12 10:30) [2]

Ну скажем, в событии формы OnCreate
...
setlength(а,5)
...
если ее потом закрыть, вылезет ошибка
"EInvalidPointer" with message "Invalid Pointer Operation"

Проблема уже в принципе решена - использованием Вариантных переменных вместо массивов и ф-ции VarArrayCreate.

Но интересно же, почему такое происходит.


← →
KSergey ©   (2002-12-12 10:33) [3]

Могу предположить 2 варианта: (с чем сталкивался)
- а память из под динам. массива чистится при выходе? (хотя тут обычно явных ошибок не вылетает)
- идет не корректная работа с этим массивом, скорее - мимо него пишется (более длины, например). Но т.к. все же попадаем в память проги, то винда (особенно 9х) не видит в этом криминала. Ну и ишет соотв. куда-то. Но туда, где пишет - что-то явно лежало, например, хендл какого-то ресурса (да или еще что). После закрытия проги идет попылка этот ресурс освобидить - а его хендл уже вовсе и не его хендл, вот тут и привет наступает... Думаю, где-то тут рыть надо...


← →
KSergey ©   (2002-12-12 10:34) [4]

Так, похоже память не чистим... Надеемся на Пушкина как обычно?


← →
Anatoly Podgoretsky ©   (2002-12-12 11:02) [5]

Проверено, вылетов не замечено


← →
Tundra   (2002-12-12 11:33) [6]

Да нет - вылеты есть Винда 2000 адвансед сервер, причем вылеть даже если в массив ничего не писать, а просто объявить setlength.
Я даже убрал весь код - просто самомк было интересно.
И ошибка происходит именно на закрытии формы.
Да, еще, это у меня основная и единственная форма.


← →
KSergey ©   (2002-12-12 11:35) [7]

Ну неужели надо повторять каждый раз: код в студию!!!! Прям неприлично выражаться хочется. То, о чем вы пишите - не бывает. Во всяком случае если повторять менно и только описанные вами вещи.



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

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



Память: 0.46 MB
Время: 0.012 c
1-74690
Fernis
2002-12-13 04:32
2002.12.23
Свой коллекшен айтем...


14-74926
Сатир
2002-10-30 13:26
2002.12.23
Команда шкодеров


7-75023
Daan_m
2002-10-17 14:08
2002.12.23
Как написать процесс


1-74823
SI-riuss
2002-12-10 11:35
2002.12.23
Клавиша TAB


1-74684
Che
2002-12-13 01:11
2002.12.23
Авторизация!!




   Наверх