|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
18.09.2022, 15:54 | #1 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 653
|
Имена процедур в exe файле
Недавно открыл exe-шник программы через тестовый просмотр.
Я всегда думал, что все названия процедур и переменных - это чисто для человека, а компилятор их заменяет на адреса в памяти. А тут, внезапно, обнаруживаю в exe-шнике имена кучи процедур... И тут два вопроса: 1. Зачем это делается? Если процессору нужны адреса в памяти, а не имена 2. Можно ли как-то перенастроить компилятор, чтобы меньше мусора было в программе? |
18.09.2022, 15:58 | #2 | ||
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
Цитата:
Цитата:
От этого механизма можно уйти, если выполнять линковку модулей в памяти вручную. А вот убрать из exe отладочную информацию, в которой тоже могут встречаться не только имена процедур, но и весь исходный код, можно. И даже нужно. Последний раз редактировалось macomics; 18.09.2022 в 16:02. |
||
18.09.2022, 16:08 | #3 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 653
|
|
18.09.2022, 16:12 | #4 |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
Не совсем текст. Отладочная информация. Только строки, которые будут реально исполняться. Описания структур и классов скорее всего не будут включаться. Создайте пустой exe и посмотрите внутри. Если там есть секция .debug или как-то так, то в этой секции будет ваш код. Пустой нужен для того, чтобы было минимальное число дополнительных строк кода. Как минимум там должны быть строки из dpr файла.
ADD: Первые 512 байт это заголовок PE файла. В нем содержится много разной информации. В том числе и информация о секциях, которые содержаться в PE файле. Чтобы найти отладочную информацию - надо расшифровать описания секций в этом заголовке Последний раз редактировалось macomics; 18.09.2022 в 16:15. |
18.09.2022, 20:53 | #5 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 653
|
А как убрать эту информацию или exe-шника?
И это ж не отобразится на работоспособности? |
18.09.2022, 20:56 | #6 |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
В Release отладочная информация не включается компилятором. Отладочную информацию используют только отладчики для навигации по коду. На работоспособность программы она не влияет.
|
18.09.2022, 21:18 | #7 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,648
|
Ну если компилировать в Debug, то программа будет выполняться медленнее. В любом случае режим Debug исключительно на время разработки, готовую программу всегда надо компилировать в Release.
E-Mail: arigato.freelance@gmail.com
|
18.09.2022, 21:25 | #8 |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
Потому что в Debug версию включается не только информация для отладчика, но еще и дополнительный код обработки ошибок. Когда собираете Release, то частично код изменяется. Убираются некоторые проверки на наличие ошибок.
|
19.09.2022, 16:18 | #9 | |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 653
|
Цитата:
|
|
19.09.2022, 21:30 | #10 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,648
|
Смотря на чем вы пишете.
E-Mail: arigato.freelance@gmail.com
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
В файле записаны данные о результатах сдачи экзамена. Вывести в другой файл фамилии и имена тех учеников, которые получили больше 80 баллов. | Вася195 | Паскаль, Turbo Pascal, PascalABC.NET | 8 | 27.10.2016 13:21 |
Ввести два файла F1, F2. Найти максимальные значения в каждом файле. В каждом файле заменить компоненты | qwerty2106 | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 07.06.2015 22:11 |
список процедур в DCU файле | iliili | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 29.06.2011 20:38 |
одновременное выполнение разных процедур в одном файле? | gramp | Microsoft Office Excel | 15 | 25.03.2011 12:15 |
Поиск данных в текстовом файле (в самом файле! а не в Memo и не загружая всю инфу из файла в одну строку | glagoff | Помощь студентам | 1 | 05.05.2010 13:00 |