Этот сайт создан как клуб русификаторщиков. Для нас существуют три основных правила.
1. Мы никому и ничего не должны!
2.Один пришедший на сайт толковый русификаторщик дороже всех пользователей.
3. Мы делаем русификаторы для своего сайта, но в оригинале ими могут пользоваться все в интернете.
Краткий курс перевода и сборки инсталлятора для SPlayer
Часть первая – начало локализации
Как и для локализации других программ, если есть уже русский файл языка, нужно проверить на новые ресурсы исходный файл. В нашем случае это файл splayer.en.dll. Запускаем Radialix 2 и создаем проект на файл splayer.en.dll, на выходе ставим Локализованный файл. Снимите галку с Используемые по умолчанию и укажите путь на русский файл. Делайте как на скрине ниже по очередности цифр и в конце согласиться надо с изменениями.
Еще надо изменить исходный язык на Английский. Делайте как на скрине ниже по очередности цифр и в конце согласиться надо с изменениями.
Теперь нужно сделать Совмещения переводов, это надо для того, чтобы узнать, что еще не переведено, и есть ли новые ресурсы. Жмите Файл->Импорт и выберите русский файл splayer.ru.dll.
В следующем окне включите функцию Любые объекты. Теперь наглядно видны добавленные ресурсы. Чтобы не портить ресурсы, снимите с выделенными красным цветом галки.
И обязательно нужно проверить ресурсы на корректность!!! Просмотрите перед началом перевода все ресурсы и снимите перевод где торчит вот такая фигня.
Теперь создайте папку рус и скопируйте туда исходный русский файл splayer.ru.dll. После всех манипуляций обновите и сохраните проект командой Обновить ресурсы и Файл->Сохранить. Теперь спокойно начинаем делать локализацию. Локализованный файл теперь будет вместо бывшего русского файла, так что после обновления и создания локализованного файла можно запускать проигрыватель и смотреть результат своей работы. Кнопка 1 это Обновить ресурсы, кнопка 2 это Создать локализованный файл.
Часть вторая – сборка инсталлятора
Для этого лучше всего подходит PatchWise Free. После установки зайдите в корень диска С: и там должна быть папка PatchWise Sample, если её нет, то создайте. Зайдите в эту папку, там должны быть две папки - Modified Files и Original Files. Если их нет, то создайте. Если они там есть, тогда то, что в них находится, удалите. Теперь в папку Original Files вставьте исходный ехе файл splayer.exe и языковый файл вместе с папкой lang. В папке удалите все файлы, зайдите в папку с программой и скопируйте исходный файл splayer.ru.dll в папке рус и вставьте его в папку Original Files -> lang.
В папку Modified Files соответственно русифицированные файлы splayer.exe и создайте папку lang и вставьте туда ваш локализованный файл splayer.ru.dll. Если короче - в папку Original Files исходные файлы, в папку Modified Files переведенные. Все, закрывайте это окно и запускайте PatchWise Free. Переключите на Создать новый проект и в следующем окне откажитесь от Мастера.
В этом окне пишем Имя и версию приложения. Внизу своё Авторское право.
Здесь кнопки не жмите, а измените только запись в поле Папка назначения
Здесь тоже вручную напишите имя ЕХЕ-файла
Ну а здесь святая святых – Ваша лицензия. Чтобы было в цвете, примените формат .rtf
Здесь уже нажимаем кнопки и выбираем иконку программы установки и рисунок мастера. Взять можно в папке программы PatchWise Free. Это папки Icons->Install и Bitmaps->Wizard соответственно.
Здесь пишем имя файла вывода вручную тоже (или копировать&&вставить). Ну и запускайте компиляцию, я обозначил кнопку цифрой 2.
Не забудьте сохранить проект. Он вам еще пригодится. Внизу созданный вами файл инсталлятора. Обязательно проверьте его работу перед выпуском в свет. Для этого дайте имя прежней установки на другое, например папку переименовать можно в SPlayer0. После этого установите программу вновь и запускайте русификатор.
Вот теперь все ОК! Запускайте русифицированную программу и наслаждайтесь своей работой!!!
Каждая программа с мультиязыками имеет своё имя папки. И если заменить имя, то программа не найдет языковую папку и подключит язык по умолчанию или глюканет. А при установке русификатора присутствует функция выбора папки установки. Так что переменные тут не надо. А для использования переменных есть программа - Inno Setup Compiler Вот список переменных, которые используются на все случаи жизни.
C:D&SUserРабочий стол -- {userdesktop} C:D&SAll UsersРабочий стол -- {commondesktop} C:D&SUser -- {userprofile} C:D&SUserИзбранное -- {userfavorites} C:D&SAl UsersИзбранное -- {commonfavorites} C:D&SUserLocal SettingsApp Data -- {localappdata} C:D&SUserМои документы -- {userdocs} C:D&SAll UsersОбщие документы -- {commondocs} C:D&SUserГлавное менюПрограммы -- {userprograms} C:D&SAll UsersГлавное менюПрограммы -- {commonprograms} C:D&SUserApp Data -- {userappdata} C:D&SAll UsersApp Data -- {commonappdata} C:D&SUserSend To -- {sendto} C: -- {systemdrive} или {sd} C:WINDOWSFonts -- {fonts} C:WINDOWSTemp -- {tmp} C:WINDOWS -- {systemroot} или {windir} или {win} C:WINDOWSSystem32 -- {sys} или {systemsystem} C:Program Files -- {programfiles} или {pf} C:Program FilesCommon Files -- {commonprogramfiles}
Вот рабочий скрип, который я использовал для русификатора SoftCAT
; Script generated by the Мастер Inno Setup Script. ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! #define MyAppName "SoftCAT" #define MyAppVerName "4.10.02" #define MyAppPublisher "WYLEK, Inc." #define MyAppURL "http://www.strelec.ucoz.ru/" #define MyAppExeName "SoftCAT.exe" [Setup] ; NOTE: The value of AppId uniquely identifies this application. ; Do not use the same AppId value in installers for other applications. ; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) AppId={{37D412F3-3C4B-41D9-8060-1158D4EBFD75} AppName={#MyAppName} AppVerName={#MyAppVerName} AppPublisher={#MyAppPublisher} AppP ublisherURL={#MyAppURL} AppSupportURL={#MyAppURL} AppUpdatesURL={#MyAppURL} DefaultDirName={pf}{#MyAppName} DefaultGroupName={#MyAppNam e} DisableProgramGroupPage=yes LicenseFile=E:Мой сайтзакинутьSoftCat4softcat_setupembeddedLicense.rtf InfoBeforeFile=E:Мой сайтзакинутьSoftCat4softcat_setupembeddedInfoBefore.txt OutputDir=E:Мой сайтзакинутьSoftCat4 OutputBaseFilename=SoftCat_RU SetupIconFile=E:Мой сайтзакинутьSoftCat4MAINICON.ico Compression=lzma SolidCompression=true WizardImageFile=E:Мой сайтзакинутьSoftCat4softcat_setupembeddedWizardImage.bmp Uninstallable=false [Languages] Name: russian; MessagesFile: compiler:LanguagesRussian.isl [Files] Source: C:Program FilesSoftCATSoftCAT.exe; DestDir: {app}; Flags: ignoreversion Source: C:My ProjectMy Project*; DestDir: {commondocs}; Flags: ignoreversion recursesubdirs createallsubdirs Source: C:My ProjectSoftCAT.chm; DestDir: {app}; Flags: ignoreversion Source: C:My ProjectSoftCAT.RU; DestDir: {app}; Flags: ignoreversion Source: C:My ProjectSoftCATSysTray.RU; DestDir: {app}; Flags: ignoreversion ; NOTE: Don't use "Flags: ignoreversion" on any shared system files [Messages] BeveledLabel=Перевод WYLEK [InstallDelete] Name: {commondocs}SoftCATHTML Export; Type: filesandordirs Name: {commondocs}SoftCATExplorer Templates; Type: filesandordirs
Патч уже сварганил. Переменные там и правда не нужны. Но за инфу сенкс. Одна незадача - вышла новая версия на днях...Еще вопрос по Радиаликсу - при переводе в строках добавляет случайные символы. Вроде это в неполной версии. Взял со Стрельца портабельную 2.13 но ишо не юзал...
Запусти прежний проект и подмени с новой версии ресурсы. Радиаликс жирным выделит новые ресурсы. Вполне возможно, что языковый файл не изменялся кроме версии.
Спасибо. Не ожидал ,что так оперативно. Изначально стояла цель нахождения досадного глюка - в контекстном меню не отображались названия звуковых дорожек и титров. При переключении на китайский все было в порядке. Пришлось преводить китайскую библиотеку , шоб понять чего не хватает в русской(В остальных языках та же проблема). Я так понимаю , в Рестораторе можно сделать патч только на один файл. А в PatchWise Free - на все изменненные файлы. Еще. Могут по разному называться папки программы на разных компах и необходимо вводить переменные для пути обновления. Не поделишься опытом?
Сообщение отредактировал Veikko 8 марта 2011 - 20:48