Главная страница
    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.033 c
5-1139064519
Admeral
2006-02-04 17:48
2006.09.03
Указатель на себя


1-1153488370
koven
2006-07-21 17:26
2006.09.03
Извлечение ссылок из интернет страницы


2-1155280014
D@Nger
2006-08-11 11:06
2006.09.03
Как узнать расширение файла по его имени?


2-1154855366
APiC
2006-08-06 13:09
2006.09.03
res


15-1154584324
КаПиБаРа
2006-08-03 09: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
Английский Французский Немецкий Итальянский Португальский Русский Испанский