Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Треклятый Access violation [D6, Win2k]


LongIsland ©   (2003-01-27 15:44:00) 

При создании формы создается некий TBitmap.
На событие OnDestroy делаю Bitmap.Free и выдается сабж. Кроме того, он стал выдаваться не сразу, а после N-ной перекомпиляции проекта.
Убираю Bitmap.Free - все проходит гладко.

Вопрос: приложение само освобождает ресурсы, связанные с этим Bitmap, если он описан в секции public?

Заранее премного благодарен!


LongIsland   (2003-01-27 16:11:00) [1]


> Ты покажи кусок-то, Гюльчатай :-)

А там показывать-то нечего:-)


procedure TfmMain.FormCreate(Sender: TObject);
begin
bmpResult:=TBitmap.Create; //Создается
end;


procedure TfmMain.FormResize(Sender: TObject);
begin
bmpResult.Width:=tsPicture.ClientWidth-imgIntervals.Width;
bmpResult.Height:=tsPicture.ClientHeight;
imgResult.Picture.Assign(bmpResult); //Здесь он используется
if not New then
sbInterpolationClick(Sender);
end;

procedure TfmMain.FormDestroy(Sender: TObject);
begin
bmpResult.Free; //Уничтожается
end;


LongIsland   (2003-01-27 16:06:00) [2]

В принципе, сабж я победил, правда пришлось весь подход изменить:(
Всем спасибо!


Игорь Шевченко   (2003-01-27 16:04:00) [3]

LongIsland © (27.01.03 15:55)

Ты покажи кусок-то, Гюльчатай :-)


Anatoly Podgoretsky   (2003-01-27 16:03:00) [4]

Не обязательно с этим.


LongIsland   (2003-01-27 15:55:00) [5]


> MBo © (27.01.03 15:51)
> Еще из телепатии - может, ты освобождаешь bitmap, когда
> он еще используется чем-то?

На OnDestroy может вызываться OnResize?

> Anatoly Podgoretsky © (27.01.03 15:51)
> На N-ной перекомпиляции проекта ты внес ошибку

Я не менял код, связанный с этим куском


LongIsland   (2003-01-27 15:53:00) [6]

Сначала я тоже так подумал:-) (я не про телепатические способности:-) )

Нет, попытка очистить идет только на OnDestroy. Ощущуние такое, что сначала его освобождаю я, потом приложение само пытается его уничтожить.


Anatoly Podgoretsky   (2003-01-27 15:51:00) [7]

На N-ной перекомпиляции проекта ты внес ошибку


MBo   (2003-01-27 15:51:00) [8]

Еще из телепатии - может, ты освобождаешь bitmap, когда он еще используется чем-то?


Игорь Шевченко   (2003-01-27 15:50:00) [9]

Нет, ты его два раза пытаешься освободить, судя по всему. Впрочем, может и ошибаюсь, телепатические мпособности слабо развиты.


Наверх

Титульная страница Поиск, карта сайта Написать письмо