Апр
24

Русификация программ

Русификация программ

Каждому из нас приходится использовать программы с англоязычным интерфейсом. Если этот интерфейс представляет собой набор из трех кнопок, то разобраться что к чему не составит труда, но если это серьезная программа, то без перевода не обойтись. Здесь есть два варианта: взять словарь и до утра понедельника следующего месяца переводить названия кнопок и запоминать их назначение, или просто залезть в Сеть и скачать программку-русификатор, которая заставит-таки буржуйскую прогу говорить по-русски ;)

Возможно, Вам интересна технология русификации программ. Тогда эта статья специально для Вас.

В первую очередь для русификации нам потребуется специальный софт. Чаще всего для этого используют редакторы ресурсов. Наиболее популярными в народе считаются Resource Hacker, Restorator и eXeScope. Здесь я не буду приводить описание перечисленных прог и приемы работы с ними (достаточно прочитать русский хэлп к Ресторатору, чтобы во всем разобраться), скажу лишь, что они практически одинаковы по своим возможностям и отличаются только интерфейсом и удобством работы. Поэтому рекомендую скачать каждую из них и поэкспериментировать. Я например, предпочитаю ResHacker.

Конечно, стоит отметить, что Restorator умеет генерировать патчи — т.е. после русификации программы он сравнивает исходный файл и измененный и создаёт небольшую программку, запоминающую все изменения, которая занимает меньше места, чем сама русифицированная прога и ее можно легко выложить в Интернете для скачивания другими пользователями, желающими заставить данную версию изъясняться на родном языке. Именно эта функция сделала Restorator таким популярным, и этим объясняется тот факт, что почти 95% русификаторов сделано с помощью Restorator»а.

Resource Hacker и eXeScope создавать патчи не умеют и поэтому они не так популярны среди переводчиков. Но патчи можно создавать и без Ресторатора с помощью специализированных утилит — патч-мейкеров. Этот вариант я считаю наилучшим, так как в этом случае у вас появляется возможность самостоятельно спроектировать интерфейс русификатора (вставить свой логотип, добавить музыкальное сопровождение и т.д.), что сразу выделит вашу работу среди однотипных патчей, сгенерированных Restorator’ом. Наиболее продвинутой в этом плане является утилита dUP v1.10 -diablo2oo2’s Universal Patcher.

Пожалуй, стоит рассказать еще об одной проблеме, очень актуальной сегодня. Дело в том, что многие программисты ленятся разрабатывать серьезные алгоритмы защиты для своих программ и все чаще прибегают к специальным утилитам, защищающим исполнимые файлы программы от дизассемблирования. Также в этом случае будет невозможно просмотреть и изменить ресурсы программы. В этом случае для русификации сначала необходимо «снять» подобную защиту. Для определения, каким именно протектором защищена программа, можно воспользоваться утилитой PEiD ( http://peid.has.it ), после чего следует скачать соответствующий распаковщик или снять защиту вручную (способ не для слабонервных ;).

Вот, в принципе, и все, что я хотел рассказать о русификации программ. Чтобы лучше изучить проблему необходимо только одно — практика, чем я и рекомендую Вам сейчас заняться. Попробуйте русифицировать какую-нибудь простую программку, например SkinMaker v1.0 — программа для создания скинов к WinAmp 2.xх, идеально подходит для тренировки.

Список инструментов, необходимых для русификации программ:

Restorator — редактор ресурсов с возможностью создания патчей.
Resource Hacker — редактор ресурсов.
eXeScope — редактор ресурсов.
OgreGUI — программа для поиска и изменения текстовых строк в исполнимых файлах.
dUP v1.10 — diablo2oo2’s Universal Patcher — продвинутый патчер с большими возможностями.
PEiD — служит для определения каким протектором/упаковщиком обработана программа.
http://rce.su/category/reversing/tools/unpackers/ — здесь вы найдете кучу автоматических распаковщиков.

© BioCyborG, 2004

Написать комментарий

XHTML: Вы можете использовать эти теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>