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

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

Народ, как заптхивать/доставать картинки из dll


KIR ©   (2004-07-27 16:58:00) 

сабж


aLexx   (2004-07-28 11:44:00) [1]


> Хотя {$R *.res} автоматически подключит все res файлы.

{$R *.res} подключит res-файл, имя которого совпадает с файлом модуля


Кириешки   (2004-07-27 19:54:00) [2]

Вот, засовывый этот линк в менеджер закачек и качай

http://user.kem.ru/pro/delphi/utils/ResWorkShop.rar

Это очень очень очень полезная программа для работы с ресурсами. Сам ей пользуюсь!

А коли хочешь сам все делать то читай сдесь :

http://home.od.ua/~blackw/WinAsm/Menures/menures.html
или сдесь
http://www.citforum.ru/programming/bp70_ow/bp70ow_03.shtml


Кириешки   (2004-07-27 19:52:00) [3]

Если тип произвольный то писать надо RCDATA

А чтобы с ресурсами не париться - найдите в инете прогу такую, называется Resources Workshop и скачайте. Она и ресурсы все сама в RES превращает и хелп в ней популярный есть. Там все написано как записать, как вызывать и.т.д.
Удачи.


Cr@zy-EyE   (2004-07-27 18:53:00) [4]

А если не картинку, а произвольный файл, то какой тип в RC-файле писать? И вообще, где про RES и RC-файлы можно почитать, а то который раз ищу в Helpе, но не могу найти.


Кириешки   (2004-07-27 18:09:00) [5]

>Iconka ©   (27.07.04 18:05) [13]

Ха, точно, просто писал в попыхах и просто "описался".

а на счет того, что {$R *.res} res файлы - это мне кажется не так, постольку поскольку у меня они не подключались.


Iconka   (2004-07-27 18:05:00) [6]

Хотя {$R *.res} автоматически подключит все res файлы.


Iconka   (2004-07-27 18:04:00) [7]

помоему {$R MyBitmap.RES}


Кириешки   (2004-07-27 18:02:00) [8]

{MyBitmap.RES} - указатель на ресурс находящийся в той-же папке где и dll.


KIR   (2004-07-27 17:58:00) [9]

А не получится, что {MyBitmap.RES} - просто фраза в комментариях?


Кириешки   (2004-07-27 17:49:00) [10]

Должно получиться вот ТАК :  

+++++++++++++++
library Bitmap.dll;

uses
 SysUtils,
 Classes;

{$R *.res}
{MyBitmap.RES} <<<<<<<

begin
end.
++++++++++++

ЗЫ. Так должно получиться, если DLL не содержит функций.

Таким способот (через ресурсы) с нее можно запихивать не только картинки, но и музыку например. Если интересно - пиши.


KIR   (2004-07-27 17:42:00) [11]

А где именно в DLL нужно написать {MyBitmap.RES}?


Кириешки   (2004-07-27 17:13:00) [12]

Пишешь MyBitmap.rc(можно в обычном блакноте)
чтобы получилось что-то вроде этого

MyPic01 BITMAP "D:\Sample.bmp"
MuPic02 BITMAP "D:\SuperCheats.bmp"


Компилируешь с помощью brcc32.exe
и получается MyBitmap.RES

Создаешь DLL, (например "Bitmap.dll") в ней пишешь

{MyBitmap.RES}

Скидываешь ресурс в папку с библиотекой, компилируешь ее.

В своей программе пишешь :

var
 h : THandle;
begin
 h := LoadLibrary('Bitmap.dll');
if h <= 0 then
  ShowMessage('Bad Dll Load')
 else
  begin
   Image1.Picture.Bitmap.LoadFromResourceName(h,'MyPic01');
   FreeLibrary(h);
  end;
end;

Все.


Digitman   (2004-07-27 17:11:00) [13]


> KIR

а как же, уважаемый вантузоюзер !

на то в VCL есть класс TResourceStream


KIR   (2004-07-27 17:08:00) [14]

>Digitman ©   (27.07.04 17:06) [4]
Хорошо, увадаемый теоритик, не могли бы вы намекнуть существуют ли способ загрузить данные из потока в динамическую библиотеку?


Digitman   (2004-07-27 17:06:00) [15]


> KIR


а нет таких понятий в программинге - "запихать", "доставать"


Ega23   (2004-07-27 17:04:00) [16]

исчерпывающий ответ, спасибо, "мастер"!

Видишь ли, каков вопрос, таков ответ. "Как оно сделать, типа, чтобы было ОПА?"


KIR   (2004-07-27 17:01:00) [17]

исчерпывающий ответ, спасибо, "мастер"!


Digitman   (2004-07-27 17:00:00) [18]


> заптхивать


вантуз на то есть


> доставать


спинниг .. и - блесенг разных ... поболе .. успех почти гарантирован


Наверх

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