MajorSubsystemVersion и MajorOperatingSystemVersion , в чем разница?

Тема в разделе "WASM.BEGINNERS", создана пользователем betrayer, 18 авг 2018.

  1. betrayer

    betrayer Guest

    Публикаций:
    0
    Нубский вопрос по РЕ формату, но не могу понять. Вот есть поле (в Opt. header) MajorSubsystemVersion , которое отвечает за версию ОС, на которой файл может запустится (т.е. линейка NT, 5 для ХР и т.д., 6 для виста и выше). Если указать 6, то понятно, что на ХР не стартанет. Для чего же тогда поле MajorOperatingSystemVersion , на что оно влияет?
     
  2. Mikl___

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

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    3.710
    betrayer,
    у меня Win x64 seven prof линкер ставит в поля MajorOperatingSystemVersion dw 5 /MinorOperatingSystemVersion dw 2, но можешь поставить нули и всё равно запустится
     
  3. betrayer

    betrayer Guest

    Публикаций:
    0
    Mikl___, странно, у меня такая же ОС, но линкер ставит 6.1. Впрочем, не суть важно.
    Так зачем тогда это поле? На что оно влияет? Или это для себя что-то, как версия программы?
     
  4. Mikl___

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

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    3.710
    betrayer,
    ну, возможно, что предполагалось программы для win16 должны запускаться в win32 и win64, а программы для win32 в win64, но вышло, как вышло, что значения в большинстве полей в РЕ-заголовке никакого значения не имеют, а просто остались как рудименты
     
    betrayer нравится это.