MSI Lab - Форум по русификации
Основные форумы => RusMe - РусМи! => Тема начата: KiLLWarez от 18 Июня 2009, 01:10:52
-
Название программы: WXtoIMG
Версия: 2.9.0.5
Размер: 8,5 мегабайт
Язык программы: английский,
Официальный сайт: www.wxtoimg.com (http://www.wxtoimg.com)
Ссылка на программу: wxinst2905c.exe (http://www.wxtoimg.com/downloads/wxinst2905c.exe)
Ссылка на «лекарство» (по возможности): -
Снимок экрана места проблемы:
Друзья, помогите пожалуйста. Взялся попробовать перевести программу. Однако пилотная программа у меня не самая лучшая для этого. Она написана на скриптовом языке TCL (+TK) и чем-то завернута для работы в Windows. В обычном файле строк нету ни в каком виде, потому что скрипт собран в байт-код. Однако если сделать дамп, то скрипт видел и строки его тоже видны. Первая же попытка перевести подтверждение при выходе из программы обламывается. Подробности на скриншоте. Предвижу некоторые вопросы и замечания, поэтому сразу говорю, не Unicode, русский текст в Win1251.
Подозреваю что нужно найти в файле что-то вроде таблицы на скриншоте и заменить часть на русские литеры. Поправьте если я ошибаюсь.
-
Программа, я так понял WxtoImg. Чем и как ты дамп делал?
-
Программа, я так понял WxtoImg. Чем и как ты дамп делал?
Что первое под руку попалось, толи LordPE толи что-то такое. На самом деле что первое под руку попалось. Софта этого с давних пор много скопилось. Вот только дамп получился 82 мегабайта.
Нашелся. PEiD.
-
Я двумя разными прогами делал, тоже 82-83 метра получалось, но они не рабочие. В смысле не запускаются. Ты уж уточни чем, чтоб у меня такой же получился, а лучше запакуй 7-zip'ом с теми настройками как на скрине, архив получится всего 1,3 мегабайта и выложи на какой-нибудь обменник или сюда.
-
Я двумя разными прогами делал, тоже 82-83 метра получалось, но они не рабочие. В смысле не запускаются. Ты уж уточни чем, чтоб у меня такой же получился, а лучше запакуй 7-zip'ом с теми настройками как на скрине, архив получится всего 1,3 мегабайта и выложи на какой-нибудь обменник или сюда.
Форум файлик почему-то отвергает, поэтому в .RAR на 4Shared
-
И где он? Я ссылку так не угадаю
-
Какая-то беда сегодня с инетом, не с первой попытки удалось вот http://ifolder.ru/12699638 (http://ifolder.ru/12699638)
-
ОМГ! Вот это прога! А чем ты ее переводишь? Я открыл кое-как это 80-метровое чудовище, а там только жестко кодированные строки без ссылок и никаких ресурсов нет. Чем ты ее переводить пытаешься? У меня даже на жестко кодированные строки все ссылки фиксированные, что значит перевод должен быть не длиннее оригинала.
-
Если лениться, тогда жесткие строки. Но если ты внимательно посмотришь, то увидишь там TCL. Хотя вот с ним я пока не знаю что делать. Господа, но мой вопрос остается в силе: как с правиться с кракозябликами в первом скриншоте?
-
Я с TCL до этого не сталкивался, это первый случай, так что с кракозябликами помочь не могу.
P.S. Чем эти TCL переводить-то? Хочу изучить.
-
TCL ничем переводить не нада, это язык программирования, типа Python. А кракозяблики на скриншоте не поэтому. Ну да ладно, я сам разберусь. А размер файла, кстати, выровнялся до размера оригинального .exe, только пришлось секции перемещать и исправлять смещения.
По переводу пока не расскажу. Есть идеи как раздвинуть все это. А вот зяблики нада победить.
-
Ну то что на скриншотике - это латиница, самая популярная кодировка что используют европейцы и американцы, стоит во второй половине после английских букв в кодировке Windows-1252, а нам надо получить Windows-1251. [hex] значения латиницы и кириллицы равны, поэтому надо чтобы программа самостоятельно использовала кодировку Windows-1251 всокупе со шрифтом поддерживающим кириллицу.
Если Windows русский, то многие стандартные шрифты уже имеют по умолчанию кириллицу, а вот самый простой способ юзать русскую кодировку - подменить европейскую.
Если WinXP - то просто в реестре HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage
в параметре 1252 указать файлик c_1251.nls,
либо файлик c_1251.nls скопировать на рабочий стол, потом переименовать в c_1252.nls и кинуть с заменой в C:\WINDOWS\system32.
Оба способа нуждаются в перезагрузке компьютера, 2й способ проще для более поздних Windows после XP (Vista, 7, ...).
-
Я тоже добился нормального размера программы, но как там переводить - ума не приложу. Шаблонные редакторы курят в сторонке, даже OgreGUI не находит текстовые строки для тестового перевода. Ты б сказал чем ты переводишь, а вдвоем проблема быстрее решится с кракозябликами. Или предыдущий пост помог?
-
Можно переводить c Hex Editor Neo или WinHex c дополнительной раскладкой
( http://rapidshare.com/files/233577422/WinHexRu.exe (http://rapidshare.com/files/233577422/WinHexRu.exe) ) .
-
Замена NLS не помогла. Причем ни реестр, ни замена файлов. DLL Cache тоже заменил.
Перевод делать руками. Любой HEX редактор или как я - Far Manager, только отключить опцию чтоб редактор не заменял табуляцию и прочее на пробелы.Остается вопрос с зябликами. Вероятнее всего не ту NLS надо менять. Как бы это проверить кроме замены всех подряд по очереди?
-
Рядом с EXE лежит шрифт .TTF западноевропейский - может от него проблемы?
-
Рядом с EXE лежит шрифт .TTF западноевропейский - может от него проблемы?
Делаем больше, удаляем шрифт. Софтина все еще запускается и работает.
-
Ей Богу не знаю. Может это связано с тем, что прога отображает текст также как в рабочем окне браузера или блокнота, т. е. жестко заданная кодировка и шрифт?...
-
Тема перенесена в новый форум.
Добавлено:
KiLLWarez, поднял описание в шапку.
-
Суть проблемы заключается в том, что введенный русский текст (в любых кодировках) в диалогах программы отображается похоже в западно-европейской кодировке. Замена NLS-файлов или их ключей в реестре, а также ключей FontMapper и FontSub... не помогает.
ZeroChaos, подними описание в шапку темы, сам я шапку редактировать уже не могу.
-
Я обнаружил, что xwxtoimg.exe сжат криптором Armadillo v1.7 (см. снимок экрана).
Загрузите распаковщик Armadillo по адресу http://unpacking.narod.ru/armadillo.html (http://unpacking.narod.ru/armadillo.html).
-
Вероятнее всего DiE врет.
Хотя бы потому что я просто сдампил программу при помощи PEiD 0.95, руками изменил размеры секций и поправил файлик (всмысле лишние нолики из него убрал, чтобы секция кода была не 82 мегабайта, а как надо). Такое с Армой просто не прокатило бы.
Ну и скрин от PEiD впридачу.
-
Я обнаружил, что xwxtoimg.exe сжат криптором Armadillo v1.7 (см. снимок экрана).
Загрузите распаковщик Armadillo по адресу http://unpacking.narod.ru/armadillo.html (http://unpacking.narod.ru/armadillo.html).
Нет, файл ничем не запакован. Все секции чистые. Вот блин разработчики намудрили!
-
Попробуйте тогда кодировку UTF-8, но это конец проекту будет. Очень громоздкие тексты будут в этом формате, которые не уместятся в оригинальный размер.
-
UTF-8 тоже не подходит. И конечно он невероятно увеличил бы проект.
Из того что удалось нарыть. Софтина написана на Tcl с применением Tk.
Цитирую Wiki (http://ru.wikipedia.org/wiki/Tcl):
Tcl (от англ. Tool Command Language — «командный язык инструментов», читается «тикль») — скриптовый язык высокого уровня.
Tcl часто применяется совместно с графической библиотекой Tk (Tool Kit). Связку Tcl/Tk по-русски иногда называют «Так-тикль».
Области применения языка — быстрое прототипирование, создание графических интерфейсов для консольных программ (пакетов программ), встраивание в прикладные программы, тестирование. Иногда Tcl применяется для создания CGI скриптов.
Tcl, наряду с Perl и Python, стал одним из трёх классических скриптовых языков общего назначения. Эта троица фигурирует не только в качестве списка свободных дистрибутивов, собираемых в ActiveState, но и, например, как языки, на которых (помимо диалекта PL/pgSQL) можно писать триггеры и хранимые процедуры популярного сервера БД PostgreSQL.
Далее. Какая версия Tcl/Tk у нас? Выше 8-ми, это однозначно, подробности здесь (http://ru.wikipedia.org/wiki/Tk), выдеру кусочек:
Начиная с Tcl/Tk 8 графический интерфейс имеет «родной» для ОС вид, то есть графические элементы будут выглядеть так же как и стандартные для данной ОС.
Т.к. это своя оконная библиотека, следовательно она весь текст рисует сама. Где-то читал что с версии 8.5 начали поддерживать unicode. До этого были проблемы с языками, которые разработчики Tcl не желали исправляться потому что "скоро выйдет unicode-версия".
Пока у меня выход один - мучать разработчиков, чтобы помочь им руссифицировать софтину.
-
Нет, все таки UTF-8. Такая же фигня как и в nanozip, но если в nanozip можно было хоть как-то русифицировать программу, то здесь это практически невозможно из-за скрипта - его невозможно удлинить почему-то. Решение найдено - кодировка UTF-8, но вот браться за русификацию такого геммора никому не советую.
P.S. Кстати, версия TCL 8.5.3, см. скрин ниже:
(http://img526.imageshack.us/img526/7351/97444450.png)
-
Но UTF не воспринимается, если просто заменить строку. Видимо еще где-то в коде скрипта нужно сделать set font или setlocale.
Я компенсировал размеры удаляя незначительные строки, как например параметры у того MessageBox'а что на первом скрине. Вот только со всем кодом не помогает.
-
Но UTF не воспринимается, если просто заменить строку. Видимо еще где-то в коде скрипта нужно сделать set font или setlocale.
Я компенсировал размеры удаляя незначительные строки, как например параметры у того MessageBox'а что на первом скрине. Вот только со всем кодом не помогает.
Как это не воспринимается, я же не от балды написал, что стоит кодировка UTF-8. Это скрипт, а значит надо правильно его переводить - слова не должны быть ни больше, ни меньше чем исходное слово. Я писал выше, что если переводить эту программу, то надо просто напросто переписывать целый скрипт и использовать кодировку UTF-8.
А вот пример переведенного окна о выходе из программы:
(http://img517.imageshack.us/img517/2218/46287176.png)
А здесь можно скачать екзешник с переведенным этим окном: СКАЧАТЬ (http://file.qip.ru/file/95361000/1ea700f3/WXtoImg_Dumped.html)
Может, вы просто неправильно используете кодировку UTF-8?
-
Может, вы просто неправильно используете кодировку UTF-8?
Вероятнее всего, сейчас перепроверю.
Немудрено, почему я ошибся. Чтобы написать в UTF-8 что-нибудь обновил Far Manager до 2.0, у них там новая версия все лики Unicode уметь читать начала. А вот писать - это под вопросом. Наверное CopyPaste в ANSI из чистого файла прокатит, а вот просто редактировать файл и пхать туда UTF текст не получается. О чем успешно сам Far и предупреждает. А есть ли UTF редактор вменяемый?
ps: Еще возникли вопросы типа, а реально ли такое написать в удобоваримой форме и т.п., но это от усталосли, странные выходные были.
-
Вероятнее всего, сейчас перепроверю.
Немудрено, почему я ошибся. Чтобы написать в UTF-8 что-нибудь обновил Far Manager до 2.0, у них там новая версия все лики Unicode уметь читать начала. А вот писать - это под вопросом. Наверное CopyPaste в ANSI из чистого файла прокатит, а вот просто редактировать файл и пхать туда UTF текст не получается. О чем успешно сам Far и предупреждает. А есть ли UTF редактор вменяемый?
ps: Еще возникли вопросы типа, а реально ли такое написать в удобоваримой форме и т.п., но это от усталосли, странные выходные были.
Вообще когда русифицируешь программу путем изменения кодировки, то лучше это делать напрямую, прямо через HEX-редактор, так надежнее.
По поводу UTF-редактора, могу посоветовать маленькую программу. Суть её - она показывает написанное слово в пяти самых популярных кодировках, и именно в HEX-кодах. Кстати, советую её всем держать на винте, кто занимается русификацией ПО, иногда хорошо помогает.
Ссылка на программу: СКАЧАТЬ (http://file.qip.ru/file/95407850/daed3fca/LoveString_185.html)
И еще по теме могу порекомендовать онлайн-кодировщик текста. Очень много различных кодировок. Иногда тоже выручал.
Ссылка на онлайн-кодировщик: ПЕРЕЙТИ (http://rgo.ru/projects/soft_online/kodirovka)
А по поводу русификации этой программы, могу сказать следующее. Я немного исследовал программу и понял, что русифицировать ее можно либо, взяв скрипт ресурсов интерфейса у разработчиков и переписать (русифицировать) его в кодировке UTF-8, а потом воткнуть его в программу, либо найти и сломать процедуру шифровки/расшифровки скрипта, наподобии как русифицировать PE Explorer.
-
В дампе скрипт уже разобран и исполняется линейно. Там есть где позаимствовать место. Достаточно много. Ваш результат повторить удалось. Теперь думаю что с этим всем делать. Надо попробовать подвигать скрипт, если получится, тогда и к регистрации приступим, а затем и к руссификации. Я уже тоже думаю про разработчика. В коде скрипта нашел какую-то трансляцию интерфейса на разные языки, в том числе и русский. Хотя в интерфейсе программы этого нету.
-
В коде скрипта нашел какую-то трансляцию интерфейса на разные языки, в том числе и русский. Хотя в интерфейсе программы этого нету.
Да, я тоже видел. А некоторые моменты кстати в кодировке Java.