Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Картинка из другой DLL, Картинка из другой DLL 
:(
    Опции темы
Budy
Дата 21.1.2005, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 616
Регистрация: 6.2.2004
Где: Екатеринбург

Репутация: 1
Всего: 2



Есть DLL, в ней картинки. Таких DLL несколько, но имя картинки одинаковое.
Сначала использовал одну, которую запихнул в ресур проекта. Доставал так:
Код

var
 BMap: TBitMap;
begin
 with Im.Canvas do
   begin
     BMap:=TBitMap.Create;                  
     BMap.LoadFromResourceName(HInstance,'BigImage.jpg');

Тут конечно ясно что проблема с HIstance, вот только не могу понять как вместо него указать свою библиотеку, например 1.dll.


--------------------
Как ты назовешь свой корабль, так на нем и напишут
user posted image
PM MAIL WWW ICQ   Вверх
Rennigth
Дата 21.1.2005, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 21.6.2004
Где: Moscow

Репутация: 49
Всего: 76



очень просто
Код

function LoadBitmapFromLibraryOfName(ABitMap : TBitMap; ANameResource : String) : boolean;
var
 HLib: THandle;
begin
 Result := Assigned(ABitMap);
 if Result then
 begin
   HLib := LoadLibrary('kmsSysLBR.dll');
   try
     Result := (HLib > 32);
     if Result then
       ABitMap.LoadFromResourceName(HLib, ANameResource);
   finally
     FreeLibrary(HLib);
   end;
 end;
end;

function LoadBitmapFromLibraryOfID(ABitMap : TBitMap; AIDResource : Integer) : Boolean;
var
 HLib: THandle;
begin
 Result := Assigned(ABitMap);
 if Result then
 begin
   HLib := LoadLibrary('kmsSysLBR.dll');
   try
     Result := (HLib > 32);
     if Result then
         ABitMap.LoadFromResourceID(HLib, AIDResource);
   finally
     FreeLibrary(HLib);
   end;
 end;
end;


Добавлено @ 19:41
для универсальности можно имя Dll в параметре указывать, мне это просто было не нужно


--------------------
(* Honesta mors turpi vita potior *)
PM MAIL ICQ   Вверх
Budy
Дата 21.1.2005, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 616
Регистрация: 6.2.2004
Где: Екатеринбург

Репутация: 1
Всего: 2



Good!


--------------------
Как ты назовешь свой корабль, так на нем и напишут
user posted image
PM MAIL WWW ICQ   Вверх
Akella
Дата 22.1.2005, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



Предлагаю исходники интересной программки? Для "выдерания" иконок из разных файлов. smile

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  GetIcons.zip
PM MAIL   Вверх
Alex
Дата 22.1.2005, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 80
Всего: 162



dsergey Ваш пример не рабочий на половине файлов иконки найдены, но не отображаются. Есть проблемы при сохранении, если нажать на отмену.


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Budy
Дата 22.1.2005, 14:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 616
Регистрация: 6.2.2004
Где: Екатеринбург

Репутация: 1
Всего: 2



dsergey, проблемка. Но доработать мона. smile


--------------------
Как ты назовешь свой корабль, так на нем и напишут
user posted image
PM MAIL WWW ICQ   Вверх
Akella
Дата 24.1.2005, 10:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



Цитата(Budy @ 22.1.2005, 14:54)
dsergey, проблемка. Но доработать мона. 

Так в чем дело?


Цитата(Alex @ 22.1.2005, 11:42)
dsergey Ваш пример не рабочий на половине файлов иконки найдены, но не отображаются. Есть проблемы при сохранении, если нажать на отмену.

Да, жаль, конечно, ноидея, то есть smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0562 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.