C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Версия ОС, Как определить?
Roman
Отправлено: 23.03.2004, 17:09


Дежурный стрелочник

Группа: Участник
Сообщений: 78



Здравствуйте!

Подскажите — как узнать версию ОС (без использования реестра)?
Нужно определить семейство Win9X/Me или Win2000/XP. Какими функциями можно воспользоваться?
Gedeon
Отправлено: 25.03.2004, 14:11


Ветеран

Группа: Модератор
Сообщений: 1742



Вот так:
CODE

   bool isOSNT; // Система WinNT  ?
   OSVERSIONINFO OSver;
   OSver.dwOSVersionInfoSize = sizeof(OSver);
   GetVersionEx(&OSver);
   if(OSver.dwPlatformId != VER_PLATFORM_WIN32_NT){
       isOSNT = true;
   }
   else{
       isOSNT = false;
   }
Roman
Отправлено: 26.03.2004, 17:13


Дежурный стрелочник

Группа: Участник
Сообщений: 78



Спасибо!!!

Все работает... smile.gif

А можно поподробнее о структуре OSVERSIONINFO? Что еще из нее можно вытащить?

Отредактировано Roman — 26/03/2004, 18:17
Valdemar
Отправлено: 27.03.2004, 15:54


Мастер участка

Группа: Участник
Сообщений: 433



QUOTE
А можно поподробнее о структуре OSVERSIONINFO?

А help на что?
Можно почитать книгу "Windows для профессионалов: создание эффективных Win32 приложений с учетом специфики 64-разрядной версии Windows", автор Рихтер Дж. Вот ссылка на нужную главу.

Вернуться в Вопросы программирования в C++Builder