Главная страница
    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.037 c
2-1155280014
D@Nger
2006-08-11 11:06
2006.09.03
Как узнать расширение файла по его имени?


4-1146942042
fun.exe
2006-05-06 23:00
2006.09.03
Top Message


15-1154325392
Jeer
2006-07-31 09:56
2006.09.03
Флаг и гюйс поднять !


15-1154963169
GeLLeR
2006-08-07 19:06
2006.09.03
Для тех, кто играл в NFS Most Wanted


2-1155626458
barakuda
2006-08-15 11:20
2006.09.03
EhLib+фильтрация





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский