при загрузке ошибку 0xc0000005 (Access Violation ....)
когда делаю section '.reloc' data readable discardable fixups то все работает.
в чем проблема?
В readable?
проверил, да. понять бы еще почему так прост конструкцию section '.reloc' fixups data discardable т.е без readable я видел в примерах из инета и вроде как у авторов оно работало. хз может от версии фасма как то зависит
Я не вспомню точно, но вроде бы оно работало на XP 7 и ниже, там ядру пофигу, можно ему ли читать релоки или нет (с восьмёрки нужно, чтобы было readable).
почему так? это внутренний баг винды. они его с какой то версии вин10 и в вин11 починили вроде. и да в хп его точно не было и во всех версиях до.
Я не понял из твоего сообщения, какой из двух вариантов ты считаешь багом. В 10/11 опять можно без readable?
Зависит вероятно от разницы exe/dll и указанного базового адреса. Если система может запустить образ без перемещений - то проблемы наверно и не возникает. А в идеале - надо ещё самому макросами проверять и корректировать reloc секцию, фасм её некорректно выравнивает по размеру, и в итоге она не всегда используется.
> А в идеале - надо ещё самому макросами проверять и корректировать reloc секцию, фасм её некорректно выравнивает по размеру, и в итоге она не всегда используется. есть какие-нибудь примеры?
Обсуждают сегодня