В моей системе Windows 7 функция API GetVersionEx Windows возвращает «6.0», указывая Windows Vista, когда она должна вернуть «6.1».
Если имеет значение, я использовал следующий код Delphi:
function winver: string;
var
ver: TOSVersionInfo;
begin
ver.dwOSVersionInfoSize := SizeOf(ver);
if GetVersionEx(ver) then
with ver do
result := IntToStr(dwMajorVersion) + '.' + IntToStr(dwMinorVersion) + '.' + IntToStr(dwBuildNumber) + ' (' + szCSDVersion + ')';
end;
и возвращена строка «6.0.6002 (Пакет обновления 2)».
Разве это не очень странно?