Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2006.09.03;
Скачать: [xml.tar.bz2];

Вниз

Определение операционной системы   Найти похожие ветки 

 
QuickFinder   (2006-05-10 13:48) [0]

Как средствами Delphi определить операционную систему на машине?
Точнее, как определить, что она - Windows XP или выше.
Спасибо.


 
Сергей М. ©   (2006-05-10 13:49) [1]

см. GetVersion[Ex]


 
Cashmare ©   (2006-05-10 14:23) [2]

Может, будет достаточно и WIN32PLATFORM


 
Cash ©   (2006-05-10 14:46) [3]

Вроде по GetVersion[Ex] надо бы узнать основу, чем эта ось является,
и исходя из нее идти либо на
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion для Win9x,
либо на
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion для WinNT
осей.
Вроде так.


 
begin...end ©   (2006-05-10 15:25) [4]

> Cash ©   (10.05.06 14:46) [3]

> ...и исходя из нее идти либо на...

А зачем ещё куда-то идти? Структура OSVERSIONINFO[EX] содержит, по-моему, вполне исчерпывающую информацию.


 
Игорь Шевченко ©   (2006-05-10 15:41) [5]


> Точнее, как определить, что она - Windows XP или выше.

uses
 SysUtils;

 Result := (Win32Platform = VER_PLATFORM_WIN32_NT) and
   ((Win32MajorVersion > 5) or
    ((Win32MajorVersion = 5) and (Win32MinorVersion > 0)) or
    ((Win32MajorVersion = 5) and
            (Win32MinorVersion = 0) and (Win32BuildNumber > 2195)));


 
mctarik ©   (2006-05-10 19:15) [6]

Пользуйтесь на Здоровье!

/Функция определения Версии ОС---------------------------------------------//

function TIntefase.GetOSVer: string;
var
 OSVersionInfo: TOSVersionInfo;
begin
 VersionOS.Caption := "Unknown";
 OSVersionInfo.dwOSVersionInfoSize := sizeof(TOSVersionInfo);
 if GetVersionEx(OSVersionInfo) then
 begin
   Label.Caption := Format("%d.%d (Build %d: %s)", {Реализация вызова}
     [OSVersionInfo.dwMajorVersion,
     OSVersionInfo.dwMinorVersion, (OSVersionInfo.dwBuildNumber and $FFFF),
       OSVersionInfo.szCSDVersion]);
   case OSVersionInfo.DwMajorVersion of
     3: VersionOS.Caption := "Windows NT3";
     4: case OSVersionInfo.DwMinorVersion of
         0: if OSVersionInfo.dwPlatformId = VER_PLATFORM_WIN32_NT then
             VersionOS.Caption := "Windows NT4"
           else
             VersionOS.Caption := "Windows 95";
         10: VersionOS.Caption := "Windows 98";
         90: VersionOS.Caption := "Windows ME";
       end;
     5: case OSVersionInfo.DwMinorVersion of
         0: VersionOS.Caption := "Windows W2K";
         1: VersionOS.Caption := "Windows XP";
       end;
   end;
 end;
end;



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2006.09.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.045 c
1-1153376353
S@[ShocK]
2006-07-20 10:19
2006.09.03
Проблема мерцания движущегося объекта Shape или Image


15-1154700286
AntiUser
2006-08-04 18:04
2006.09.03
Тест скорости интернет соединения.


6-1143721565
vic_774N
2006-03-30 16:26
2006.09.03
решение проблемы подсей


15-1155200636
parovoZZ
2006-08-10 13:03
2006.09.03
BDE Administrator


15-1155239556
TGX
2006-08-10 23:52
2006.09.03
Проблемы с монитором!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский