Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Surround

Ветеран


Сообщения: 908
Благодарности: 20

Профиль | Отправить PM | Цитировать


unreliable
через WinAPI можно так:
Код: Выделить весь код
 
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;

Отправлено: 16:30, 27-06-2004 | #2