секция ресурсов

Тема в разделе "WASM.BEGINNERS", создана пользователем n1kt0, 12 мар 2009.

  1. n1kt0

    n1kt0 Забанен

    Публикаций:
    0
    Регистрация:
    18 июл 2007
    Сообщения:
    160
    в общем дома просканил свои мануалы и буки и ничего не нашел. Где описание этой секции и что должно быть в ней ? во всех руководствах ничего нет
     
  2. Sol_Ksacap

    Sol_Ksacap Миша

    Публикаций:
    0
    Регистрация:
    6 мар 2008
    Сообщения:
    623
    http://www.microsoft.com/whdc/system/platform/firmware/PECOFF.mspx
     
  3. n1kt0

    n1kt0 Забанен

    Публикаций:
    0
    Регистрация:
    18 июл 2007
    Сообщения:
    160
    а какой-то примерчик по работе с ресурсами не подскажите ?
     
  4. Jupiter

    Jupiter Jupiter

    Публикаций:
    0
    Регистрация:
    12 авг 2004
    Сообщения:
    532
    Адрес:
    Russia
  5. Phantom_84

    Phantom_84 New Member

    Публикаций:
    0
    Регистрация:
    6 июн 2007
    Сообщения:
    820
    Да какие примерчики, тупо загружаешь по идентификатору с помощью соответствующей типу ресурса функции. А вообще кто досканально изучал работу fasm'а по части ресурсов, структуру секции ресурсов должен был тоже изучить... До сих пор как страшный сон вспоминаю... CHARACTERISTICS... TIMEDATESTAMP... MAJORVERSION... MINORVERSION... группы объектов... заголовки объектов... и отдельно сами объекты... LANGUAGE... CODEPAGE... VS_VERSION_INFO... заморочки с выравниванием... всего и не перечесть. Короче пользуйся компилятором ресурсов и не парься :)
     
  6. MSoft

    MSoft New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2006
    Сообщения:
    2.854
    Phantom_84
    я так подозреваю, что цель - не создание ресурсов руками :))
    n1kt0
    описание ты найдешь и сам. Могу только дать совет: в ресурсах реально используется только 3 уровня (не пытайся обрабатывать больше) - это тип, имя и язык ресурс. Если примешь это как константу, обрабатывать все остальное будет на порядок легче.
     
  7. MSoft

    MSoft New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2006
    Сообщения:
    2.854
    Jupiter
    залей на сендспейс пжлста
     
  8. Jupiter

    Jupiter Jupiter

    Публикаций:
    0
    Регистрация:
    12 авг 2004
    Сообщения:
    532
    Адрес:
    Russia
  9. Mikl___

    Mikl___ Супермодератор Команда форума

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    3.787
    посмотри Сам себе Iczelion начиная с #121 идет ручная сборка ресурсов, там и комментарии есть
     
  10. n1kt0

    n1kt0 Забанен

    Публикаций:
    0
    Регистрация:
    18 июл 2007
    Сообщения:
    160
    всем спасибо, сам себе айсзелион посмотрю
    ps: тему не закрывайте - может еще вопросы появятся
     
  11. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    774
    я себе такое откуда-то выдрал :)

    Код (Text):
    1. section '.rsrc' resource data readable
    2.  
    3. directory RT_ICON,icons,RT_GROUP_ICON,group_icons,RT_VERSION,versions
    4. resource icons,1,LANG_NEUTRAL,icon_data
    5. resource group_icons,17,LANG_NEUTRAL,main_icon
    6. resource versions,1,LANG_NEUTRAL,version
    7.  
    8. icon main_icon,icon_data,'%SystemRoot%\system32\Icons\exec.ico'
    9.  
    10. versioninfo version,VOS__WINDOWS32,VFT_APP,VFT2_UNKNOWN,LANG_ENGLISH+SUBLANG_DEFAULT,0,\
    11.               'FileDescription','ClockSkew...',\
    12.               'LegalCopyright','2001-2005 GmbH',\
    13.               'FileVersion','1.0.0.0',\
    14.               'ProductVersion','1.0.0.0',\
    15.               'OriginalFilename','ClockSkew.exe',\
    16.               'Company','Semiono'
     
  12. KondraT

    KondraT Member

    Публикаций:
    0
    Регистрация:
    22 янв 2006
    Сообщения:
    175
  13. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    774
    offtop:

    Код (Text):
    1. include '%fasm%\win32a.inc'
    2. section '.code' code readable executable
    3. blah-blah...
    4.  
    5. data import
    6. library kernel32,'KERNEL32.DLL',shell32,'SHELL32.DLL'
    7. import kernel32,ExitProcess,'ExitProcess'
    8. import shell32,ShellExecute,'ShellExecuteA'
    9. end data
    Код (Text):
    1. include '%fasm%\win32ax.inc'
    2. section '.code' code readable executable
    3. start:
    4. blah-blah...
    5.  
    6. .end start
    В чём фитча-то? Последний пример получается больше! Из чего я делаю вывод, что наверное там больше описаний для функций и как бы болше шансов что это будет работать на любой системе? В отличе от принудительного data import где я сам конкретно указываю ANSI либы из моей системы? Или там не так всё вовсе? Что есть круче? :)
     
  14. iZzz32

    iZzz32 Sergey Sfeli

    Публикаций:
    0
    Регистрация:
    3 сен 2006
    Сообщения:
    355
    Semiono, оба варианта win32-инклуда создают одинаковый по функционалу exe. Отличия только в намакросенных удобствах. И да, ещё win32ax-вариант создаёт под импорты отдельную секцию, оттого и отличия в размере.
    Я пользуюсь win32a.inc и win32w.inc, но это только дело вкуса.
     
  15. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    774
    > под импорты отдельную секцию
    а, тогда ясно!
    iZzz32, а win32w.inc это для -W функций, я так понял..? Я то думал, что у меня всегда W козяблики выдаёт! Видимо потому что я W под win32ax.inc врубал.
    Хотя в плане приоритетов ) наверное с A функциями совместимость будет лучше в разных виновс?
     
  16. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    774
    Только обноружил, что Code Page: (Latin I)
    Обычно хочется 0 (ANSI Default) В Fasm не смог ничего CP_ACP, CP_ANSI методом тыка подобрать

    Просто для красоты нужно)
     
  17. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.994
    Только не говори, что 15 лет разбирался с этим.
     
    TrashGen, sl0n, Semiono и 2 другим нравится это.
  18. TrashGen

    TrashGen ТрещГен

    Публикаций:
    0
    Регистрация:
    15 мар 2011
    Сообщения:
    1.186
    Адрес:
    подполье
    f13nd, 15 лет мы были в тени, но теперь больше уже не можем молчать! Мы те, кто хочет всю свою жизнь потратить за этим сцаным монитором, подбирая CP_ANSI методом тыка!
     
    sl0n нравится это.