Программы для локализации > Шаблонные редакторы

Поиск ресурсов программы

<< < (3/3)

Serj777:

--- Цитата: Metabolic ---Чтоб разобраться, нужно определить суть проблемы, выкладывайте скрины и желательно проект перевода (Ncui.dll + Ncui.rdmap + Ncui.rdlp).
--- Конец цитаты ---

Файлы можно скачать тут: https://cloud.mail.ru/public/CtZ1/JfR9DwKBs

Запуск без перевода ЖЗС(тут без глюков)


Первый запуск с переведенными ЖЗС. Глюки с выводом сообщений.


Повторный запуск. Глюки остались + глюк с кодировкой.


Правильно ли я понимаю что в самой IDA можно без Radialix выполнить перевод и скомпилировать(сохранить) измененный файл. Если да, то как это можно сделать?

Еще нашел видео с правкой глюков IDA после создания файла rdmap.
https://youtu.be/DEKj3T_NHSM
Не успел попробовать, но думаю может помочь.

Metabolic:
Локализуемый файл Ncui.dll имеет нестандартное размещение ресурсов, определенная часть текстовых строк которые задействованы в интерфейсе программы находится в заголовке PE (DLL) файла. При создании файла карты в IDA так называемый PE Header не учитывается, соответственно в созданном .rdmap отсутствуют те самые строки...

Также замечено, что после добавления Radialix-ом секции .data, происходит смещение интересующего нас блока текста и соответственно сбиваются установленные ссылки на этот текст. В большинстве случаев в заголовке PE файла есть нулевые байты куда можно (прописывать) добавлять новые секции, но  в данном случае имеется нестандартный файл и свободное место отсутствует.

P.S. При переводе жестко закодированных строк Radialix добавляет в конец файла секцию .data в которую он записывает удлиненный переведенный текст и перенаправляет на него ссылки.

Serj777:

--- Цитата: Metabolic ---Остается одно, переводить все жестко закодированные строки вручную с помощью отладчика!  
--- Конец цитаты ---
Где почитать про отладчик для этих целей?

Metabolic:

--- Цитата: Serj777 ---Где почитать про отладчик для этих целей?
--- Конец цитаты ---
Можете ознакомиться со следующим материалом: "Удлинение строки в OllyDbg"

Еще можно сделать комбинированный перевода в несколько этапов с помощью Radialix и отладчика OllyDbg (но для этого необходимо выполнить определенные манипуляции).
- Пропатчить dll (подготовить нулевые байты для секции .data) -> перевести необходимые строки в Radialix+IDA -> затем еще раз пропатчить dll -> и перевести в отладчике строки которые остались не переведенные (строки в PE Header).  

Навигация

[0] Главная страница сообщений

[*] Предыдущая страница

Перейти к полной версии