О точке входа PE в Windows - PullRequest
       11

О точке входа PE в Windows

6 голосов
/ 19 сентября 2010

Всегда ли это наименьший адрес раздела кода?

1 Ответ

8 голосов
/ 19 сентября 2010

Нет, не обязательно.Точка входа PE определяется в структуре IMAGE_OPTIONAL_HEADER , в поле AddressOfEntryPoint:

Указатель на функцию точки входа относительно базового адреса изображения.Для исполняемых файлов это начальный адрес.Для драйверов устройств это адрес функции инициализации.Функция точки входа необязательна для DLL.Когда точка входа отсутствует, этот элемент равен 0.

Компоновщик может установить это значение таким, каким он хочет быть, при условии, что он является действительным относительным виртуальным смещением в PE.Некоторые компиляторы и компоновщики могут иметь соглашение о размещении точки входа в начале раздела текста / кода, но для нее нет требований к формату ОС или PE.

...