6 / 6 / 0
Регистрация: 14.10.2012
Сообщений: 36
|
|
1 | |
Упаковка ресурсов в exe. gcc (MinGW)21.10.2012, 17:31. Показов 6059. Ответов 9
Метки нет Все метки)
(
Здравствуйте. Возникла задача упаковать различного рода файлы в программу. Пробовал создавать заголовочный файл с содержимым в духе const char = "<файл, открытый в блокноте>"; , но решение не красивое и не очень удобное.
В VS есть возможность просто добавить файл в проект как ресурс и на этом все... Вопрос: а). Есть ли утилита (не связанная со средой), которая к уже скомпилированному exeшнику добавит ресурс б). Если нет, то подскажите, как создать руками ресурс и подключить к приложению. Среда NetBeans, компилятор MinGW
0
|
|
21.10.2012, 17:31 | |
Ответы с готовыми решениями:
9
Упаковка ресурсов Gcc без MinGW Сборки MinGW(GCC-win32/win64) от niXman Запуск exe из ресурсов |
погромист
415 / 251 / 30
Регистрация: 27.08.2012
Сообщений: 550
|
|
21.10.2012, 17:40 | 2 |
По моему, тут Dll нужно, но как его писать без понятия
0
|
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
|
|
21.10.2012, 17:45 | 3 |
Можно использовать файлы ресурсов VS. С MinGW идет утилита windres.exe, которая позволяет компилировать файлы ресурсов в объектные файлы.
windres имя_файла_ресурса.rc имя_объектного_файла_на_выходе.o Ну а дальше просто подцепляете его при линковке как простой объектный файл. В NetBeans просто добавляете файл ресурсов. После чего в его свойствах настраиваете необходимые действия ( запуск windres.exe ), а в свойствах проекта, в опции линкера ставите зависимость от имя_объектного_файла_на_выходе.o и так же добавляете его в дополнительные параметры линкера.
1
|
6 / 6 / 0
Регистрация: 14.10.2012
Сообщений: 36
|
|
21.10.2012, 17:52 [ТС] | 4 |
Насколько понял, в вашем примере файл .rc - уже данность)
А как получить его из, скажем, .bmp'шки? (VS не стоит, устанавливать из-за такой мелочи не хотелось бы)
0
|
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
|
|
21.10.2012, 17:58 | 5 |
Ryzhikov_A, сами ресурсы ( картинки, звуки и др. ) не хранятся в rc. В rc лишь описаны типы ресурсов, их имена и путь до них. То есть rc это текстовый файл, который точно так же компилируется в VS при сборке проекта.
1
|
6 / 6 / 0
Регистрация: 14.10.2012
Сообщений: 36
|
||||||
21.10.2012, 19:25 [ТС] | 6 | |||||
Toshkarik, с файлом ресурсов разобрался, к проекту .o с ресурсом цепляется (судя по размеру exe).
Но где-то ошибся... .rc: Код
IMAGE BITMAP "test.bmp"
0
|
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
|
|
21.10.2012, 19:41 | 7 |
Ryzhikov_A, а в VS пробовали компилировать?
0
|
6 / 6 / 0
Регистрация: 14.10.2012
Сообщений: 36
|
|
22.10.2012, 10:03 [ТС] | 8 |
Нет, не установлен... Делаю все в виртуальной машине (вообще же сижу под линем), раздувать размер виртуального диска на 1 Гб не очень хочется...
Но вряд ли дело в компиляторе Добавлено через 14 часов 6 минут GetLastError() после LoadImage возвращает 8, что расшифровывается как INSUFFICIENT MEMORY...
0
|
391 / 179 / 2
Регистрация: 14.03.2012
Сообщений: 443
|
|
25.10.2012, 22:02 | 9 |
Ryzhikov_A, Паритесь, паритесь с ресурсами. Прицепили бы просто в виде оверлея. Откройте ваш exe’шник и допишите в конец bmp’ку.
1
|
6 / 6 / 0
Регистрация: 14.10.2012
Сообщений: 36
|
|
25.10.2012, 23:18 [ТС] | 10 |
Не знал, что так можно, спасибо)
на данный момент смог реализовать упаковку и извлечение сырых ресурсов (RC_DATA), что меня в общем устраивает.
0
|
25.10.2012, 23:18 | |
25.10.2012, 23:18 | |
Помогаю со студенческими работами здесь
10
Изменение ресурсов в файле .exe .dll Запуск exe после извлечения из ресурсов Mingw-w64 MinGW TDM-GCC Linker Ошибки [gcc\MingW] Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |