Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Определить тип системы [D6]


Sheng ©   (2003-08-16 10:54:00) 

Привет всем! Наро, как можно определить тип системы, точнее мне нужно узнать, это WinXP или нет.


Юрий Зотов   (2003-08-16 14:54:00) [1]

> Sheng © (16.08.03 12:05) [3]

Существует еще Win32Platform, которая все и разруливает.


Просто случайный   (2003-08-16 12:41:00) [2]

Юрий Зотов © (16.08.03 11:37) [2] ответил пОлно
Если подробнее, то
Var WVS : String;
DVS : String;
WinV := GetVersion AND $0000FFFF;
DosV := GetVersion SHR 16;
{Версия операционной системы MS-DOS}
DVS := IntToStr(Hi(DosV))+"."+IntToStr(Lo(DosV));
{Версия операционной системы Microsoft Windows}
WVS := IntToStr(Lo(WinV))+"."+IntToStr(Hi(WinV));

5.1 - это XP


Sheng   (2003-08-16 12:05:00) [3]

Интересно получается: Win95 - 4.0, WinNT - 4.0


Юрий Зотов   (2003-08-16 11:37:00) [4]

Можно и гораздо проще:
if (Win32MajorVersion = 5) and (Win32MinorVersion = 1) ...
то это Windows 5.1. Она и есть XP. А уж как там будут называться более старшие версии - пока неизвестно. Вообще, вот выдержка из MSDN (Whistler - это XP):

MajorVersion
Windows 95 4
Windows 98 4
Windows Me 4
Windows NT 3.51 3
Windows NT 4.0 4
Windows 2000 5
Whistler 5

MinorVersion
Windows 95 0
Windows 98 10
Windows Me 90
Windows NT 3.51 51
Windows NT 4.0 0
Windows 2000 0
Whistler 1


Skier   (2003-08-16 10:58:00) [5]

API GetVersionEx(...)


Наверх

Титульная страница Поиск, карта сайта Написать письмо