в общем дома просканил свои мануалы и буки и ничего не нашел. Где описание этой секции и что должно быть в ней ? во всех руководствах ничего нет
Да какие примерчики, тупо загружаешь по идентификатору с помощью соответствующей типу ресурса функции. А вообще кто досканально изучал работу fasm'а по части ресурсов, структуру секции ресурсов должен был тоже изучить... До сих пор как страшный сон вспоминаю... CHARACTERISTICS... TIMEDATESTAMP... MAJORVERSION... MINORVERSION... группы объектов... заголовки объектов... и отдельно сами объекты... LANGUAGE... CODEPAGE... VS_VERSION_INFO... заморочки с выравниванием... всего и не перечесть. Короче пользуйся компилятором ресурсов и не парься
Phantom_84 я так подозреваю, что цель - не создание ресурсов руками ) n1kt0 описание ты найдешь и сам. Могу только дать совет: в ресурсах реально используется только 3 уровня (не пытайся обрабатывать больше) - это тип, имя и язык ресурс. Если примешь это как константу, обрабатывать все остальное будет на порядок легче.
я себе такое откуда-то выдрал Код (Text): section '.rsrc' resource data readable directory RT_ICON,icons,RT_GROUP_ICON,group_icons,RT_VERSION,versions resource icons,1,LANG_NEUTRAL,icon_data resource group_icons,17,LANG_NEUTRAL,main_icon resource versions,1,LANG_NEUTRAL,version icon main_icon,icon_data,'%SystemRoot%\system32\Icons\exec.ico' versioninfo version,VOS__WINDOWS32,VFT_APP,VFT2_UNKNOWN,LANG_ENGLISH+SUBLANG_DEFAULT,0,\ 'FileDescription','ClockSkew...',\ 'LegalCopyright','2001-2005 GmbH',\ 'FileVersion','1.0.0.0',\ 'ProductVersion','1.0.0.0',\ 'OriginalFilename','ClockSkew.exe',\ 'Company','Semiono'
вот хорошая статейка про иконки в секции ресурсов, мне очень помогла: http://www.realcoding.net/article/view/4410
offtop: Код (Text): include '%fasm%\win32a.inc' section '.code' code readable executable blah-blah... data import library kernel32,'KERNEL32.DLL',shell32,'SHELL32.DLL' import kernel32,ExitProcess,'ExitProcess' import shell32,ShellExecute,'ShellExecuteA' end data Код (Text): include '%fasm%\win32ax.inc' section '.code' code readable executable start: blah-blah... .end start В чём фитча-то? Последний пример получается больше! Из чего я делаю вывод, что наверное там больше описаний для функций и как бы болше шансов что это будет работать на любой системе? В отличе от принудительного data import где я сам конкретно указываю ANSI либы из моей системы? Или там не так всё вовсе? Что есть круче?
Semiono, оба варианта win32-инклуда создают одинаковый по функционалу exe. Отличия только в намакросенных удобствах. И да, ещё win32ax-вариант создаёт под импорты отдельную секцию, оттого и отличия в размере. Я пользуюсь win32a.inc и win32w.inc, но это только дело вкуса.
> под импорты отдельную секцию а, тогда ясно! iZzz32, а win32w.inc это для -W функций, я так понял..? Я то думал, что у меня всегда W козяблики выдаёт! Видимо потому что я W под win32ax.inc врубал. Хотя в плане приоритетов ) наверное с A функциями совместимость будет лучше в разных виновс?
Только обноружил, что Code Page: (Latin I) Обычно хочется 0 (ANSI Default) В Fasm не смог ничего CP_ACP, CP_ANSI методом тыка подобрать Просто для красоты нужно)
f13nd, 15 лет мы были в тени, но теперь больше уже не можем молчать! Мы те, кто хочет всю свою жизнь потратить за этим сцаным монитором, подбирая CP_ANSI методом тыка!