Как локализовать VersionInfo установочного файла Inno Setup? - PullRequest
3 голосов
/ 24 апреля 2019

Я создаю приложение с другим именем в зависимости от языка пользователя.Так, например, программное обеспечение называется «Эмулятор устройства» на английском языке и «Geräteemulation» на немецком языке.

Я хочу отразить различные имена в Инфо о версииустановочный файл (щелкните правой кнопкой мыши -> Свойства -> вкладка «Сведения»).До сих пор я не нашел способа в Inno Setup указать локализованный "VersionInfo", ни в онлайн-справке, ни в сети.

Первоначально я пытался использовать пользовательские сообщения в разделах установки, о которых я узнал, что ямне не разрешеноСм. Код ниже.

[Setup]
AppName={cm:ApplicationName}
AppVerName={cm:ApplicationName} V{#MYVERSION}
AppCopyright=© 2018 {#MYCOMPANY}
AppPublisher={#MYCOMPANY}
AppVersion={#MYVERSION}
AppId={cm:ApplicationName}{#MYVERSION}

VersionInfoVersion={#MYVERSION}
VersionInfoCompany={#MYCOMPANY}
VersionInfoCopyRight=(C) {#MYCOMPANY}
VersionInfoDescription={cm:ApplicationName}
VersionInfoProductName={cm:ApplicationName}
VersionInfoProductVersion={#MYVERSION}

Я ожидал, что это покажет мне окно свойств с локализованным именем приложения и информацией о версии, но, к сожалению, оно просто отображает {cm:ApplicationName} для AppName, VersionInfoProductName и VersionInfoDescription.

enter image description here

Итак, кто-нибудь из вас знает, как локализовать это в Inno Setup?

1 Ответ

1 голос
/ 24 апреля 2019

Все Константы Inno Setup оцениваются во время выполнения / установки.В то время как информация о версии - вещь времени компиляции (она встроена в заголовок файла установщика .exe).Таким образом, вы не можете использовать константы ни в одной из директив VersionInfo*.

Хотя технически Windows .exe может включать в себя отдельные структуры информации о версии для разных локалей (языков), это не поддерживается Inno Setup.

Inno Setup имеет только один заполнитель для информации о версии.

...