|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Win32 API - [решено] Как "вшить" картинку в .ЕХЕ ? |
|
Win32 API - [решено] Как "вшить" картинку в .ЕХЕ ?
|
Новый участник Сообщения: 28 |
Мне нужно написать приложение при запуске которого создавалось(по указанному в исходнике пути) изображение (формата .gif). Должен быть ТОЛЬКО .exe файл. Мое изображение должно каким-то образом "вшито" в екзешник.
Пробовал копаться с ресурсами: hRsrc = FindResource(hInstance, "myGif", RT_RCDATA); hGlb = LoadResource(hInstance,hRsrc); LockResource(hGlb); Также нашел функцию: BOOL WINAPI CopyFile(...), но похоже она тоже не может мне помочь (((. Пишу на С++ в Visual Studio 2005. Прошу подтолкнуть в нужном направлении Спасибо. |
|
Отправлено: 01:18, 15-03-2011 |
Ветеран Сообщения: 3320
|
Профиль | Отправить PM | Цитировать ferona по глобальному указателю нужно определить размер ресурса и записать данные на диск.
Что-то вроде такого bool bSuccess = false; //... BYTE *lpbArray = (BYTE*)LockResource(hGlob); if (!lpbArray) return bSuccess; DWORD dwFileSize = SizeofResource(NULL, hRes); if (!dwFileSize) return bSuccess; HANDLE hFile = CreateFile(ResName, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL|FILE_ATTRIBUTE_ARCHIVE, NULL); if (hFile != INVALID_HANDLE_VALUE) { DWORD dwDummy; if (WriteFile(hFile, lpbArray, dwFileSize, &dwDummy, NULL)) bSuccess = true; CloseHandle(hFile); } FreeResource(hGlob); return bSuccess; |
Отправлено: 01:56, 15-03-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 28
|
Профиль | Отправить PM | Цитировать Огромное спасибо! ))) , программу дописал благодаря вашему ответу. Проблема решена.
|
------- Отправлено: 09:43, 15-03-2011 | #3 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Разное - [решено] Как управлять "Начинать с экрана приветствия" или "Защита паролем" в св-вах заставки. | Alex Konovalov | Microsoft Windows 2000/XP | 12 | 17-05-2016 19:27 | |
Sharepoint - [решено] SharePoint подскажите как убрать кнопки "Мне нравиться" и "Тэги и заметки" из верхней | HarrySmith | Другие серверные продукты | 4 | 08-10-2014 16:38 | |
Интерфейс - [решено] Как удалить папку "Моя музыка","Мои Картинки", "Мое видео"? | verdix | Microsoft Windows 2000/XP | 3 | 03-10-2009 23:46 | |
VBS/WSH/JS - [решено] Как добавить "сложное" значение в "бинарный" параметр реестра с помощью WSH | 13Demon | Скриптовые языки администрирования Windows | 1 | 10-02-2009 09:47 | |
Запретить/удалить пункт "Programs" ("Программы") из меню кнопки "Start" ("Пуск") | submaster | Microsoft Windows NT/2000/2003 | 5 | 13-09-2006 12:29 |
|