Задать вопрос
@pqgg7nwkd4

Как добавить свою DLL в таблицу импорта EXE?

Добрый день.

Я написал хот-патч для программы. Работает он так: запускает нужную программу, "патчит" ее память и сам завершается.

Мне бы хотелось, чтобы патч запускался автоматически при запуске этой нужной программы.

Появилась идея просто оформить патч в виде DLL, и добавить эту DLL в таблицу импорта EXE файла, а в секции инициализации просто запустить поток, который выполнит патч.

Подскажите сложно ли это сделать и как?

Спасибо.

P.S. Патч исправляет ошибку в программе (связанную в с деноминацией в Белоруссии). Никакого криминала.
  • Вопрос задан
  • 643 просмотра
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
NeiroNx
@NeiroNx
Программист
подменить одну из системных библиотек своей - кинув модифицированню в папку с программой.
Ответ написан
@none7
Таблицу импорта пофиксить трудно. Нужно тщательно изучить формат PE, разобрать EXE-шник на части, добавить новую секцию перед секцией ресурсов, в которой сформировать новую таблицу импорта, оставив старые "Thunk RVA". Затем собрать заново пересчитав расположение каждой секции на диске. Но всё уже написано за Вас злобными вирмейкерами :), а Вы похоже даже не пытались найти такие утилиты. подсказываю Google: add dll to import
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы