Пример обновления локализации и сборка инсталлятора

Краткий курс перевода и сборки инсталлятора для SPlayerЧасть первая – начало локализацииКак и для локализации
  1. Оффлайн

    Автор темы

    WYLEK

    Звание: Легенда

    Админ

    Сообщений: 2179

    Создано тем: 315

    Рейтинг: 10

    Репа: (245|245|0)

    Баллы: 3405

    Был: 2024-04-28 20:29

    Лайков: 196

    Краткий курс перевода и сборки инсталлятора для 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. После этого установите программу вновь и запускайте русификатор.



    Вот теперь все ОК! Запускайте русифицированную программу и наслаждайтесь своей работой!!!



    Вот и все, что не ясно спрашиваем здесь.

    8 марта 2011 - 15:39 / #1
  2. Оффлайн

    Автор темы

    WYLEK

    Звание: Легенда

    Админ

    Сообщений: 2179

    Создано тем: 315

    Рейтинг: 10

    Репа: (245|245|0)

    Баллы: 3405

    Был: 2024-04-28 20:29

    Лайков: 196

    Каждая программа с мультиязыками имеет своё имя папки.
    И если заменить имя, то программа не найдет языковую папку и подключит язык по умолчанию или глюканет.
    А при установке русификатора присутствует функция выбора папки установки. Так что переменные тут не надо.
    А для использования переменных есть программа - 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
    Сообщение отредактировал 5 февраля 2021 - 03:04

    8 марта 2011 - 21:40 / #2
  3. Оффлайн

    Veikko

    Забанен

    Сообщений: 127

    Создано тем: 6

    Репа: 0

    Баллы: 0

    Был: 2015-02-18 11:15

    Лайков: 1

    Патч уже сварганил. Переменные там и правда не нужны. Но за инфу сенкс. Одна незадача - вышла новая версия на днях...Еще вопрос по Радиаликсу - при переводе в строках добавляет случайные символы. Вроде это в неполной версии. Взял со Стрельца портабельную 2.13 но ишо не юзал...
    9 марта 2011 - 03:02 / #3
  4. Оффлайн

    Автор темы

    WYLEK

    Звание: Легенда

    Админ

    Сообщений: 2179

    Создано тем: 315

    Рейтинг: 10

    Репа: (245|245|0)

    Баллы: 3405

    Был: 2024-04-28 20:29

    Лайков: 196

    Одна незадача - вышла новая версия на днях...

    Запусти прежний проект и подмени с новой версии ресурсы. Радиаликс жирным выделит новые ресурсы.
    Вполне возможно, что языковый файл не изменялся кроме версии.

    9 марта 2011 - 08:38 / #4
  5. Оффлайн

    Veikko

    Забанен

    Сообщений: 127

    Создано тем: 6

    Репа: 0

    Баллы: 0

    Был: 2015-02-18 11:15

    Лайков: 1

    Спасибо. Не ожидал ,что так оперативно. Изначально стояла цель нахождения досадного глюка - в контекстном меню не отображались названия звуковых дорожек и титров. При переключении на китайский все было в порядке. Пришлось преводить китайскую библиотеку , шоб понять чего не хватает в русской(В остальных языках та же проблема). Я так понимаю , в Рестораторе можно сделать патч только на один файл. А в PatchWise Free - на все изменненные файлы. Еще. Могут по разному называться папки программы на разных компах и необходимо вводить переменные для пути обновления. Не поделишься опытом?
    Сообщение отредактировал Veikko 8 марта 2011 - 20:48
    9 марта 2011 - 17:39 / #5

Статистика форума, пользователей онлайн: 1 (за последние 20 минут)

Создано тем
1177
Всего сообщений
15352
Пользователей
17856
Новый участник
Daniel7375ysk