В Delphi есть диалог для добавления информации о версии в программу. Причем есть он и для платформы Linux
введите сюда описание изображения
Вопрос: как эту информацию достать? А точнее - как ее добавить в файл? Поиск по бинарному файлу строк из этого окна ни к чему не привел. В файле такие строки не найдены. В документации о Линуксе ничего не сказано.
Я так понимаю, что какого-то единого стандарта для хранения версии в Линуксе нет?
Сейчас все, что я вижу - это формировать свой собственный ресурс со своим форматом и затягивать его в приложение. Но почему не работает стандартный механизм?
-
1Вероятно потому, что в Linux нет стандартного механизма для указания версии в файле.Герман Борисов– Герман Борисов2022年05月31日 04:11:21 +00:00Commented 31 мая 2022 в 4:11
-
я бы ожидал, что из исходного кода версия будет доступна на этапе сборки через какой-нить макрос... а также что она будет указана в deb/rpm пакете при сборке оного...Fat-Zer– Fat-Zer2022年05月31日 04:58:15 +00:00Commented 31 мая 2022 в 4:58
-
@ГерманБорисов Тогда какой тогда смысл в наличии этого окна в IDE?Anton Shchyrov– Anton Shchyrov2022年06月01日 13:21:19 +00:00Commented 1 июн. 2022 в 13:21
-
У меня вообще не даёт включить VersionInfo для Linux-проектов - выдаёт ошибкуViktor Tomilov– Viktor Tomilov2022年07月15日 07:12:21 +00:00Commented 15 июл. 2022 в 7:12
1 ответ 1
Добавить в проект файл с ресурсом. {$R Version.RES} Сам же файл компилируется из
Version.RC Который имеет вид примерно такой:
1 VERSIONINFO
FILEVERSION 1,2,4,0
PRODUCTVERSION 1,2,4,0
FILEOS 0x4
FILETYPE 0x1
FILESUBTYPE 0x0L
FILEFLAGSMASK 0x3fL
{
BLOCK "StringFileInfo"
{
BLOCK "040704E4"
{
VALUE "CompanyName", "My company0円"
VALUE "FileDescription", "MY PROGRAM0円"
VALUE "FileVersion", "1.2.3.40円"
VALUE "InternalName", "MY PROGRAM- V12340円"
VALUE "LegalCopyright", "© My company (2005)0円"
VALUE "LegalTrademarks", "0円"
VALUE "OriginalFilename", "0円"
VALUE "ProductName", "Bla bla0円"
VALUE "ProductVersion", "1.70円"
VALUE "Comments", "0円"
VALUE "Author", "Vasya Pupkin0円"
VALUE "Compiling Date", "20.05.2022 13:32:240円"
}
}
BLOCK "VarFileInfo"
{
VALUE "Translation", 0x0407 0x04E4
}
}
-
Это просто, но вопрос был
Но почему не работает стандартный механизм?Anton Shchyrov– Anton Shchyrov2022年06月01日 13:20:15 +00:00Commented 1 июн. 2022 в 13:20
Начните задавать вопросы и получать на них ответы
Найдите ответ на свой вопрос, задав его.
Задать вопрос