|
0 / 0 / 0
Регистрация: 16.08.2019
Сообщений: 2
|
|||||||||||
Как добавить в исполняемый ELF дополнительную загружаемую секцию?16.08.2019, 15:42. Показов 1609. Ответов 3
Метки нет (Все метки)
Ковыряю дизассемблером исполняемую программу из недорогого тепловизора HT-1A. Производитель сильно облегчил это дело, оставив всю отладочную информацию в программе
Ковыряю для того, чтобы немного улучшить и изменить интерфейс. И столкнулся с тем, что в некоторых моментах мне нужно не просто изменить байты в теле программы, а добавить их. Естественно, просто вставить их нельзя - полетят к чертям все ссылки на код и данные. Поэтому пришла мне в голову мысль добавить в конец файла килобайт 10, добавить в таблицу заголовков программы еще один, загружаемый в из этих 10 кб, и в этих 10 кб уже дописывать какие-то свои моменты, при необходимости прыгая на них из оригинального кода. Можно ли это сделать и если можно, то как? Что-то все мои попытки приводят к неработоспособности файла. Пока я пытался изменить заголовок NOTE на LOAD, пытаясь загрузить небольшой кусок этого файла в память по адресу, следующему за последним используемым программой Пока я не назначаю ему тип LOAD и не определяю адреса загрузки - файл работает, даже если я меняю его на NULL. То есть сам этот заголовок NOTE файлу для работы не нужен, как и секции, определенный в его адресах - .note.ABI-tag и .note.gnu.build-id При запуске измененного файла ОС тепловизора просто выдает сообщение Killed без подробностей. Системные логи, насколько я понял, не ведутся.
Вот лог загрузки, если это может помочь: Кликните здесь для просмотра всего текста
0
|
|||||||||||
| 16.08.2019, 15:42 | |
|
Ответы с готовыми решениями:
3
Как добавить секцию в самое начало документа ? Как добавить дополнительную ось на график |
|
6773 / 2741 / 385
Регистрация: 17.02.2013
Сообщений: 4,048
|
|
| 17.08.2019, 17:14 | |
|
Примерно в таком духе : PE-файл в виде COM-файла
Т.е. разобрать и уяснить значение каждого поля в заголовке ELF все равно ведь придется.
1
|
|
|
0 / 0 / 0
Регистрация: 16.08.2019
Сообщений: 2
|
|
| 17.08.2019, 19:28 [ТС] | |
|
Разбирался, там их вроде не так уж и много. Ставил нужные значения флагам. Не работает
0
|
|
|
Модератор
|
|
| 10.09.2019, 22:10 | |
|
В основной сегмент нельзя добавить дополнительный код? И подправить в заголовке размер, а также смещение других сегментов при необходимости.
Может, конечно, просто физической памяти не хватить. :\
0
|
|
| 10.09.2019, 22:10 | |
|
Помогаю со студенческими работами здесь
4
Как правильно добавить дополнительную оперативку? Как добавить дополнительную запись в компонент ComboBox? Как добавить модули в исполняемый файл? Как добавить файлы в исполняемый файл? Как добавить OpenAL.dll в исполняемый файл? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|