Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
Comanche
#1

Создание resource-only DLL

18.07.2010, 21:49. Просмотров 1176. Ответов 3
Метки нет (Все метки)

Пришёл сюда из VB-шного форума, поскольку напоролся на ограничение бэйсика, которое, похоже, обойти нельзя никак.

ДАНО:
Куча иконок с глубиной цвета 24 бита. Иконки используются в приложении VB 6.0. Понижать глубину цвета нельзя; использовать вместо иконок битмапы - тоже нельзя.

ЗАДАЧА:
НаписАть DLL-ку, которая будет хранить все иконки внутри себя в виде ресурсов, и экспортировать некую функцию, которая по заданному ID ресурса вернёт или GDI-шный хэндл иконки, или то, что в бэйсике зовётся 'StdPicture'.

ПРОБЛЕМА:
1). Бэйсиковский редактор ресурсов не понимает, зараза, глубины цвета в 24 бита! (пишет 'Invalid icon file'). А как я мог заметить, в VC 6.0 редактор ресурсов этого ограничения не имеет.
2). Я НЕ ЗНАЮ VC 6.0 - и вместе с тем мне придётся, очевидно, DLL-ку делать на Си, другого выхода нет. Поэтому буду благодарен за любую оказанную помощь: ссылку на MSDN, URL статьи 'в тему', пример кода и т.п.

Заранее благодарен!
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.07.2010, 21:49
Ответы с готовыми решениями:

Создание DLL
Всем доброго время суток помогите мне разобраться в том как создавать .dll или...

Создание .dll
Здравствуйте.Нужна помощь в создание dll.Опишите пожалуйста саму структуру...

создание DLL
Помогите пожалуйста понять что не так сделала 8)))) может что-то странное в...

Создание DLL
const __int64 MathArray = {{0, 1}, {2, 3}, {4, 5}}; Ошибок нет. но в .h...

Создание dll
Всем привет, лютые и бородатые прогеры :) Потихоньку изучаю язык С....

3
Comanche
18.07.2010, 22:16 #2
Вот нашёл в Сети некий 'мастер' создания resource-only DLLs:
http://www.beginthread.com/Article/Ehsan/Win32%20Resource-Only%20DLL%20AppWizard/

Скачал, сделал всё по написанному. Получил DLL-ку с 16-цветной иконкой, хотя скармливал редактору ресурсов 24-битную иконку. Странно... не посмотрите сей чудесный код? (на указанной ссылке лежит ZIP-архив).

И ещё вопрос: правильно ли я понимаю, что выдёргивать иконки из этой DLL-ки нужно с помощью API LoadImage ?
bazile
65 / 41 / 68
Регистрация: 15.03.2007
Сообщений: 6,909
19.07.2010, 11:32 #3
DLL-ку с ресурсами создать несложно. Создайте проект пустой прокет windows приложения (без mfc). Добавьте в него новый *.rc файл и потом экспортом накидайте туда все нужные иконки. Смените тип проекта с Debug на Release. Откомпилируйте. DLLка готова.

Для загрузки иконок лучше использовать специализированную функцию LoadIcon.
0
Comanche
19.07.2010, 13:58 #4
Спасибо.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2010, 13:58

Создание DLL
Здравствуйте!!!! Помогите пожалуйста создать dll, проблема заключается в том...

Создание DLL в Borland C++ 3.1
Приветствую вас многоуважаемые прогеры!) У меня возникла проблема в написании...

Создание dll в cmake
Вообщем, у меня есть исходный код библиотеки (mydll.cpp и mydll.h)(писалось на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru