Автор Тема: Mpress GUI 0.2  (Прочитано 403 раз)

Онлайн Kirill Borisenko

  • Постоялец
  • ***
  • Сообщений: 182
    • http://
Mpress GUI 0.2
« : 11 Мая 2025, 22:25:36 »
Добрый день.

Вопрос к знатокам в области HEX редактирования.

Перевёл оболочку для архиватора Mpress GUI.
Однако, у программы нет секции ресурсов.
Есть необходимость сдвинуть часть "галочек" интерфейса вправо (какие - видно на скрине).
Однако, не могу понять, где кодируется их расположение.

Оффлайн leserg73

  • Постоялец
  • ***
  • Сообщений: 108
    • Wylek.ru
Re: Mpress GUI 0.2
« Ответ #1 : Вчера в 14:35:52 »
Ресурсы в программе есть (значок, манифест и прочее - это все ресурсы).
Просто элементы интерфейса создаются при запуске (in runtime mode).

Для определения размеров и координат размещения элементов на форме используйте оконные сканеры, например WinSpy++.
Узнаете фактические координаты желаемого элемента: Х=186 пикселей (в формате НЕХ - BAh) - изображение mpress01.png.

Затем открываете программу в отладчике (x64Dbg) и задаете поиск константы BAh.
Будет найдено несколько значений  - изображение mpress02.png.
В первую очередь следует обращать внимание на запись в регистр фактических значений, а не значения смещений.
Как видно, их четыре.

Переходим в код программы по первому значению - изображение mpress03.png.
Это положение первого элемента. Ниже по коду идут остальные три - координата Х у них одинаковая.

Изменяем значение Х на желаемое (в качестве примера я изменил на BFh) - изображение mpress04.png.
Результат изменения виден на рисунке выше. Аналогично для других элементов.

Сохраните сделанные в отладчике изменения в новый файл.

P.S.
В вашем локализованном файле MpressGUI_rus.exe вы сделали лишний перевод строк с именем файла упаковщика: mpress.exe >> mpress_rus.exe.
В результате сломали функции по кнопкам "Справка" и "Лицензия". Верните оригинальные строки с именем файла упаковщика.


Онлайн Kirill Borisenko

  • Постоялец
  • ***
  • Сообщений: 182
    • http://
Re: Mpress GUI 0.2
« Ответ #2 : Сегодня в 21:50:49 »
Сохраните сделанные в отладчике изменения в новый файл.

Спасибо - очень помогло.
Действительно новый инструмент.

P.S.
В вашем локализованном файле MpressGUI_rus.exe вы сделали лишний перевод строк с именем файла упаковщика: mpress.exe >> mpress_rus.exe.
В результате сломали функции по кнопкам "Справка" и "Лицензия". Верните оригинальные строки с именем файла упаковщика.

Это просто техническая особенность релиза перевода.

Справочная информация в оболочку, в журнал подгружается из консольного исполняемого файла.

Если сделать кодировку cp866 для неё, то крякозябры в оболочке.
Если win-1251 или utf-8, то крякозябры в консоли.

Я просто выделил mpress_rus.exe как файл для работы с интерфейсом.

Консольная же версия оставлена без изменений по требованию лицензии автора.