Delphi - база знаний


Как получить версию Windows?


Как получить версию Windows?



Type TOSVersion=(osUnknown, osUnknown9x, osUnknownNT, osWin95, osWin98, osWin98SE, osWinME, osWinNT, osWin2000, osXP);

function GetOSVersion : TOSVersion;
var osVerInfo : TOSVersionInfo;
majorVer, minorVer : Integer;  
begin
result := OsUnknown;  
osVerInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo);  
if GetVersionEx(osVerInfo) then  
begin  
majorVer := osVerInfo.dwMajorVersion;  
minorVer := osVerInfo.dwMinorVersion;  
case osVerInfo.dwPlatformId of  
VER_PLATFORM_WIN32_NT :  
Case majorVer of  
4:result := OsWinNT;  
5:if minorVer=0 then result := OsWin2000  
else   
if minorVer=1 then result := OsXP else result := osUnknownNT;  
else result := osUnknownNT;  
end{Case majorVer of}  
VER_PLATFORM_WIN32_WINDOWS :  
case majorVer of  
4: Case minorVer of  
0:result := OsWin95;  
10: if osVerInfo.szCSDVersion[1] = 'A' then result := OsWin98SE else result := OsWin98;  
90: result := OsWinME;  
else result := osUnknown9x;  
end;{Case minorVer of}  
else result := osUnknown9x;  
end{case majorVer of}  
else result := OsUnknown;  
end;{case osVerInfo.dwPlatformId of}  
end;{if GetVersionEx(osVerInfo) then}  
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
case GetOSVersion of  
osUnknown: Showmessage('Unknown');  
osWin95: Showmessage('Win95');  
osWin98: Showmessage('Win98');  
osWin98SE: Showmessage('Win98SE');  
osWinME: Showmessage('WinME');  
osWinNT: Showmessage('WinNT');  
osWin2000: Showmessage('Win2000');  
osXP: Showmessage('XP');  
end;  
end;

Автор Vit
Взято с Vingrad.ru





Начало  Назад  Вперед