· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.WIN32 —› Создание секции своими руками

Посл.отвђт Сообщенiе


Дата: Май 19, 2004 17:22:37

Вопрос:
Как средствами линкера&компилятора создать секцию, допустим с именем mysect, в конце файла?
ЗЫ: Средствами MASM


Дата: Май 19, 2004 17:42:00

В конце объявишь - в конце и будет. А про "mysect" -- по-моему любой уважающий себя компилятор допускает задание произвольных имен секций.


Дата: Май 21, 2004 08:46:00

Anonimka
Вопрос был не "можно ли", а "как". Я вот давно масмом не пользовался и потому не помню напрочь. А что это возможно никто под сомнение не ставит.


Дата: Май 21, 2004 11:15:42 · Поправил: Anonimka

n0p
Как я понял, упор делался на "в конце файла". На что было отвечено.

bbuc
Про именование:
Я не знаком в masm-ом, но несколько секунд поиска по его хелпу выявили синтаксис .CODE [name].
Да, еще можно же editbin.exe program.exe /section:old_name=new_name после компиляции (хотя это уже не линкер/компилятор)..


Дата: Май 22, 2004 05:26:38

а вот и не факт!
линкер может объединять секции с одинаковыми атрибуами и в целевой PE "ручная" секция может и не попасть...
так что тут мало создать секцию, еще нужно упросить линкер не заниматься самодеятельностью ;) как именно это сделать - зависит от линкера, читайте хелп, а точнее ту его часть где описывается статегия деланья секциям MERGE

теперь о масме, вот пара макросов на этот случай.

beginSection MACRO SectName
.my&SectName SEGMENT DWORD PUBLIC 'DATA'
ENDM

endSection MACRO SectName
.my&SectName ENDS
ENDM


Дата: Май 22, 2004 15:38:50

Всем спасибо!


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.052