Может быть кто нибудь в курсе такого вопроса. В поле Characteristics заносится сумма установленных флагов. А вот как на основании этой суммы определить какие именно флаги выставлены?
Ранг: 16.3 (новичок), 2thx Активность: 0.15↗0.22 Статус: Участник
Создано: 24 августа 2019 11:00 · Поправил: zombi-vadim · Личное сообщение · #5
BlackCode пишет: установи BlackCode пишет: А там разберешьс Вот я и пытаюсь разобраться. Сумма комбинации 15ти флагов. Мне что как в кодовом замке их перебирать?Как программа определяет эту комбинацию? По какой то формуле?
Relocation information was stripped from the file. The file must be loaded at its preferred base address.If the base address is not available, the loader reports an error.
IMAGE_FILE_EXECUTABLE_IMAGE
0x0002
The file is executable(there are no unresolved external references).
IMAGE_FILE_LINE_NUMS_STRIPPED
0x0004
COFF line numbers were stripped from the file.
IMAGE_FILE_LOCAL_SYMS_STRIPPED
0x0008
COFF symbol table entries were stripped from file.
IMAGE_FILE_AGGRESIVE_WS_TRIM
0x0010
Aggressively trim the working set.This value is obsolete.
IMAGE_FILE_LARGE_ADDRESS_AWARE
0x0020
The application can handle addresses larger than 2 GB.
IMAGE_FILE_BYTES_REVERSED_LO
0x0080
The bytes of the word are reversed.This flag is obsolete.
IMAGE_FILE_32BIT_MACHINE
0x0100
The computer supports 32-bit words.
IMAGE_FILE_DEBUG_STRIPPED
0x0200
Debugging information was removed and stored separately in another file.
IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP
0x0400
If the image is on removable media, copy it to and run it from the swap file.
IMAGE_FILE_NET_RUN_FROM_SWAP
0x0800
If the image is on the network, copy it to and run it from the swap file.
IMAGE_FILE_SYSTEM
0x1000
The image is a system file.
IMAGE_FILE_DLL
0x2000
The image is a DLL file.While it is an executable file, it cannot be run directly.
IMAGE_FILE_UP_SYSTEM_ONLY
0x4000
The file should be run only on a uniprocessor computer.
zombi-vadim Что сложного? Установленная галочка - это взведенный флаг в TRUE. Название всех флагов присутствует. 010F введи в поле Value и открой меню Characteristics и увидишь какие флаги установлены.
Добавлено спустя 1 минуту TryAga1n пишет: Лентяи! Абсолютный
Лентяи Z Я видел эти значения. Но не могу догнать как мне их получить из общей суммы.
Добавлено спустя 1 минуту BlackCode пишет: и увидишь какие флаги установлены. Мне не надо в какой то программе их увидеть я хочу понять как самому их вычислить.
Добавлено спустя 16 минут BlackCodeСумма флагов 0x8000. 0x4000.0x2000 равна значению E000. Это понятно. Как мне сделать обратное вычисление? Вычитать все возможные флаги из суммы или есть какой то понятный простой способ?
Ранг: 71.5 (постоянный), 95thx Активность: 0.1↗0.38 Статус: Участник
Создано: 24 августа 2019 12:02 · Поправил: BlackCode · Личное сообщение · #12
zombi-vadim пишет: А как мне програмно на С++ это записать? 0xE000 = ? Извините я слабо разбираюсь в битовых операциях.. Это элементарные знания, которые вы обязаны знать! Вас в гугле забанили? --> Link <--
BlackCodeСпасибо что направили в нужное направление.Я почему то не мог понять как извлечь флаги.Все оказалось элементарно.Огромное спасибо всем за помощь.
Начинай с азов. С такими знаниями, как у тебя сейчас, ты будешь спотыкаться на каждом шагу, особенно учитывая, что ты сообразил только после 12-го поста в теме.