В процессе сборки проекта в редакторе необходимо иметь возможность выбора иконки для выходного .exe файла
Сам .exe файл уже скомпилирован естественно, иконки по дефолту не имеет.
Каким образом из С++ можно изменить иконку файлу ?
Resource Hacker
FDsagizi
> Каким образом из С++ можно изменить иконку файлу ?
0iStalker
> Resource Hacker
Resource Hacker (ResHacker, или ResHack) — редактор ресурсов, программа, предназначенная для просмотра, извлечения и замены ресурсов в исполняемых Portable Executable файлах
Ясно.
FDsagizi
> В процессе сборки проекта в редакторе необходимо иметь возможность выбора иконки для выходного .exe файла
> Сам .exe файл уже скомпилирован естественно, иконки по дефолту не имеет.
> Каким образом из С++ можно изменить иконку файлу ?
Если у тебя файл уже скомпилирован, то какой проект ты собираешься собирать?
Сломал мозг твоим вопросом. Пищы ышчо.
FDsagizi
> Каким образом из С++ можно изменить иконку файлу ?
А не всё ли равно? Файл ты уже скомпилировал и перекомпилировать его не хочешь, как я понимаю.
Sasha7b9
> Если у тебя файл уже скомпилирован, то какой проект ты собираешься собирать?
Сборка проекта в 1 exe файл из редактора :)
FDsagizi
> Каким образом из С++ можно изменить иконку файлу ?
прочитать ехе в память, найти смещение до начала блока байт с нужным изображением, перезаписать его, записать ехе на диск.
http://msdn.microsoft.com/en-us/windows/hardware/gg463119.aspx
FDsagizi
> Сборка проекта в 1 exe файл из редактора :)
Мда, что-то я упустил в этой жизни)
http://msdn.microsoft.com/en-us/library/windows/desktop/ms648008(v=vs.85).aspx#_win32_Updating_Resources
тут уже написали, ресурс хакер
формат exe определен, внутри есть ресурсы, иконки, формы, текст и т.д.
можно открыть секцию ресурсов и поменять ее как угодно,
причем размер exe может поменятся и это не ломает и не должно ломать exe
my.name
> тут уже написали, ресурс хакер
> формат exe определен, внутри есть ресурсы, иконки, формы, текст и т.д.
> можно открыть секцию ресурсов и поменять ее как угодно,
> причем размер exe может поменятся и это не ломает и не должно ломать exe
Как я понял, здесь нужно именно из своей программы поменять. Ну т.е. пишем ИДЕ, надо чтобы для компилируемых программ можно было значок выбрать.
тогда может тупо заменять файл на диске иконки перед сборкой
Стояла точно такая же задача. Тоже делал интерпретатор, к которому должен был в конец цепляться файл с данными, а внутри заменяться иконка, чтобы в итоге получился один компактный .exe (или .scr - для скринсейверов это более критично).
Когда поднимал этот вопрос, тут наткнулся на это: http://www.gamedev.ru/code/forum/?id=82111
Ну и как вариант: вставлять иконку при сборке, а потом тупо заменять данные по посчитанному смещению.
Тема в архиве.