Я обновлял свой старый код Delphi 2007 до Delphi XE8, где я наблюдал очень странное поведение с информацией о версии программы.
Ниже приведен файл Version.rc, который я использовал для компиляции тестового проекта.
1 VERSIONINFO
FILEVERSION 0,0,0,0
PRODUCTVERSION 0,0,0,3
FILEOS 0x4
FILETYPE 0x2
{
BLOCK "StringFileInfo"
{
BLOCK "080904E4"
{
VALUE "CompanyName", "ABC Inc\000"
VALUE "FileDescription", "Version Testing\000"
VALUE "FileVersion", "0.0.0.0\000"
VALUE "ProductName", "VERT001\000"
VALUE "ProductVersion", "A003\000"
}
}
BLOCK "VarFileInfo"
{
VALUE "Translation", 0x0809 0x04E4
}
}
Когда я смотрю информацию о версии с компьютера с Windows 8.1, я получаю следующую информацию:
И когда я просматриваю информацию о версии Windows Server 2012, я получаю следующую информацию:
Первоначально я думал, что это может быть проблема с параметром FILEOS, и я изменил его на VOS_NT_WINDOWS32 или даже на VOS_NT, однако это ничего не изменило.
Один и тот же тестовый проект, скомпилированный с помощью Delphi 2007, правильно отображает сведения о версии в обеих ОС.
Кто-нибудь сталкивался с подобной проблемой в недавнем прошлом?
{$R *.res}
на{$R MyProjectName.res}
, что, как я подозреваю, важно. - person David Heffernan   schedule 12.10.2015dpr
содержит устаревший файл.res
. Под Win7 все было нормально, а под Win10 нет. - person Edwin Yip   schedule 17.08.2019