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

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

LoadImage [D7, WinXP]


parovoZZ ©   (2004-07-29 23:19:00) 

Как выгрузить картинку из памяти, если я её загрузил с помощью сабжа?


parovoZZ   (2004-07-31 21:28:00) [1]

Простите меня не грамотного, я  DeleteObject(); делал при завершении программы, потому всё и падало.


GuAV   (2004-07-31 00:06:00) [2]

сам попробовал такое:

var h:hBitmap; I: Integer;
begin
 for I:=0 to 9999 do
   begin
     h:=LoadImage(0,'D:\doc\prog\clouds.bmp',IMAGE_BITMAP,
       0,0,LR_LOADFROMFILE or LR_CREATEDIBSECTION);
    // Assert(h<>0);
     DeleteObject(h);
  end
end;

ничего не падает, пока не закоментируешь DeleteObject(h);


parovoZZ   (2004-07-30 21:22:00) [3]

Image := LoadImage (0, 'fon.bmp', Image_Bitmap, 0, 0, LR_LOADFROMFILE or LR_CREATEDIBSECTION);


GuAV   (2004-07-30 14:58:00) [4]

А какие флаги в последнем параметре?


parovoZZ   (2004-07-30 11:21:00) [5]

DeleteObject убивает переменную, а сама картинка остаётся в памяти. По крайней мере, если 10 раз в секунду присваивать Image := LoadImage (), то через какое-то время программа займёт все русурсы системы. DeleteObject не помогает.


GuAV   (2004-07-29 23:26:00) [6]

Remarks

When you are finished using a bitmap, cursor, or icon you loaded without specifying the LR_SHARED flag, you can release its associated memory by calling one of the functions in the following table.

Resource Release function
Bitmap DeleteObject
Cursor DestroyCursor
Icon DestroyIcon

The system automatically deletes these resources when the process that created them terminates, however, calling the appropriate function saves memory and decreases the size of the process's working set.

т.е. можно вышеназванными ф-циями, а можно и не удалять.


Наверх

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