• Добро пожаловать на WYLEK.ru. Пожалуйста, войдите или зарегистрируйтесь.
 
48 гостей, 1 пользователь

Xara Designer Pro X365

Автор Teodorrrro , 28 ноября 2016, 10:12:00

« предыдущая - следующая »

Teodorrrro Автор темы

Тема создана 28 ноября 2016, 10:12:00
Здравствуйте!
1) В программе Xara Designer Pro X365 есть функция вставки содержимого из каталога в Интернете. Он открывается в своем окне прямо из программы. У этого каталога на сервере есть локализация на несколько языков, которая подхватывается автоматически в зависимости от кода языка, который программа передала серверу. Сама программа никогда не была переведена на русский, но, как ни странно, у каталога есть свой перевод на русский.
Так как я создал файлы русских ресурсов, программа стала считать себя русской, т. е. записала сведения об этом в реестр. Когда я открываю каталог, он открывается с русским переводом, который есть на сервере. НО! На сервере перевод неполный, для многих строк перевода нет. Выглядит это очень плохо. Если в реестре я изменю определенные значения кода языка (HKEY_CURRENT_USERSOFTWAREXaraXtremePro x6412Resources) с 1049 на 1033, программа передаст серверу данные о том, что она англоязычна, и страница каталога будет отображена на английском, без каких-либо изъянов (см. на этом видео). В папке программы файлы перевода для каталога ЕСТЬ (в папках  C:Program FilesXaraXara Designer Pro X12asefileswebsharedlocalisation и C:UsersФедорAppDataLocalXaraXtremePro12websharedlocalisation, во вторую папку все копируется  из первой при первом запуске программы), но они игнорируются, т. е. программа принудительно скачивает перевод с сервера (во временную папку IE C:UsersпользовательAppDataLocalMicrosoftWindowsINetCacheIE). Когда я закрываю программу, в реестре снова возвращаются значения 1049. Если я для этого раздела реестра задам режим доступа "Только чтение" и принудительно задам 1033, программа начнет выдавать ошибки. Короче говоря, я не могу программу заставить использовать английский язык в каталоге или перевести каталог по-нормальному на русский.
2) Также в программе есть строки, которые я нигде не могу найти. Это всплывающие подсказки, появляющиеся на маркерах поворота и изменения размера вставленных фотографий: см. пример здесь и здесь. Под подозрение попадают файлы q.eng/q.ita/q.deu... из папки C:Program FilesXaraXara Designer Pro X12asefilesfilesv12.4. Там как раз, судя по расширениям файлов q, есть переводы для нескольких языков, кроме русского. К сожалению, разобраться в их содержимом мне оказалось не по силам: непонятные коды.
Прикрепляю ссылки на скачивание программы, а также свой недоделанный перевод.

Leserg

Ответ #1 : 28 ноября 2016, 11:12:00 #1
Привет!
Интересная задачка... Смотрю пока никого не осенило...  
По первому вопросу. Если я правильно понял, необходимо сделать так, чтобы для указанных параметров реестра всегда записывалось значение кода английского языка, а именно 1033 (409h). Так?
По второму вопросу. Эти файлы являются обфусцированными сценариями Java (.js). Надо искать инструмент, который позволит их деобфусцировать (фу, блин, ну и словечко, язык сломать можно   ). Я пока ничего не нашел.

P.S. А ты не пробовал отправить перевод разработчику? Тогда бы и проблемы не было бы.
Кто ищет, тот всегда найдет!

Teodorrrro Автор темы

Ответ #2 : 28 ноября 2016, 11:42:00 #2
Спасибо за ответ! 
1) Если в реестре принудительно только для чтения поставить 1033, программа выдаст ошибки. Но ошибок не будет, если во время выполнения программы, когда все её компоненты уже загружены, изменить эти значения в реестре. И на сервер не залезешь и файлы не подменишь, это уже хакерство будет. 
2) И зачем это им понадобилось делать?.. Может эти файлы были созданы в каком-нибудь особом редакторе...
Попробовать отправить можно, но только через год, к тому моменту новую версию выпустят. Ухожу через несколько дней в армию, уже не успеваю.

Nexus

Ответ #3 : 28 ноября 2016, 12:42:00 #3
Цитата: LesergЭти файлы являются обфусцированными сценариями Java (.js).
Помню у тебя уже был опыт в деобфусцировании таких файлов, что-то там для Сталевара вроде как дешифровал.
Цитата: TeodorrrroУхожу через несколько дней в армию, уже не успеваю.
Да ну какая тогда русификация! Нужно хорошенько нагуляться за эти дни

Leserg

Ответ #4 : 29 ноября 2016, 12:42:00 #4
Цитата: NexusПомню у тебя уже был опыт в деобфусцировании таких файлов
Я уже и не помню.    Если бы каждый день с ними возился, а так раз в два года.  

Цитата: TeodorrrroИ зачем это им понадобилось делать?..
Этого мы никогда не узнаем.

Цитата: TeodorrrroМожет эти файлы были созданы в каком-нибудь особом редакторе...
Ну может они каким-то особым редактором и пользуются, а так это можно сделать в блокноте.

Короче, вот деобфускатор: jаvascript Deobfuscator. Проверил - работает!  
Держи распакованный: q.zip

Кодировка документа должна быть UTF-8. Иначе будут кракозяблики. Что переводить - думаю, разберешься. Готовый файл положить в каталоги

C:Program FilesXaraXara Designer Pro X12asefilesfilesv12.4

и

С:UsersИмя_пользователяAppDataLocalXaraXtremePro12webasefilesv12.4

Потом открой в текстовом редакторе файл jsfiles-index.xml, найди в нем строку

Код: xml

и замени на

Код: xml

Контрольную сумму CRC готового файла q.rus запиши в теге checksum. Сохрани изменения.
Закрой программе доступ в сеть и только после этого запускай. Теперь подсказки будут на русском.



Как только программа увидит окно в сеть, файл jsfiles-index.xml будет автоматически загружен с сервера и русского не будет. Если на файл jsfiles-index.xml установить атрибут "только для чтения" (именно по нему выполняется подстановка нужной локализации), то при запуске программа сообщит об ошибке и функция подсказок работать не будет. Поэтому надо подумать, как отключить функцию его обновления.

Сколько у меня дней в запасе? Или оставим на год? В принципе, время пролетит быстро.
Кто ищет, тот всегда найдет!

Teodorrrro Автор темы

Ответ #5 : 29 ноября 2016, 13:42:00 #5
Отключить доступ к серверу? Только звучит это плохо, пусть останется как есть.
Конечно год! Спасиб за помощь, круто!

 аталог@MAIL.RU - каталог ресурсов интернет Яндекс.Метрика