|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Определение операционной системы |
|
|
Определение операционной системы
|
Пользователь Сообщения: 112 |
Профиль | Отправить PM | Цитировать Как в delphi или C++ Builder узнать какая операционная система установлена. Приведите пожалуйста програмный код. С уважением, unreliable.
|
|
Отправлено: 16:07, 27-06-2004 |
Ветеран Сообщения: 908
|
Профиль | Отправить 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 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Модер Железа Сообщения: 1557
|
Профиль | Сайт | Отправить PM | Цитировать Surround
еще есть Win NT 5.2 (Windows 2003 Server). а так вполне нормальный () с виду код |
------- Отправлено: 18:38, 27-06-2004 | #3 |
Ветеран Сообщения: 908
|
Профиль | Отправить PM | Цитировать bgg0408
ну на Win2003 пока не учел... кстати как 2003-я все еще сырая такая же? |
Отправлено: 19:15, 27-06-2004 | #4 |
Модер Железа Сообщения: 1557
|
Профиль | Сайт | Отправить PM | Цитировать Surround
ИМХО, 2003 лучше ХР будет.... Даже для дома. На оверклокерах даже увеличение скорости заметили при таком переходе... |
|
------- Отправлено: 23:29, 27-06-2004 | #5 |
Ветеран Сообщения: 908
|
Профиль | Отправить PM | Цитировать bgg0408
возможно, но когда я себе ее ставил, только при появлении, еще сыровата была... а так вещсь стоящая |
Отправлено: 06:52, 28-06-2004 | #6 |
Старый параноик Сообщения: 2423
|
Профиль | Отправить PM | Цитировать Самое полное определение операционной системы приведено в PSDK. Я не буду давать листинг, очень много кода. Определяет всё, вплоть до наличия SP1 в XP.
См. ms-help://MS.PSDK.1033/sysinfo/base/getting_the_system_version.htm |
Отправлено: 13:47, 28-06-2004 | #7 |
Пользователь Сообщения: 112
|
Профиль | Отправить PM | Цитировать hasherfrog
ссылка не пашет! |
Отправлено: 16:06, 28-06-2004 | #8 |
Старый параноик Сообщения: 2423
|
Профиль | Отправить PM | Цитировать unreliable
Ссылка работает только у тех, у кого установлен PSDK. Это локальная ссылка. на самом-то деле. |
Отправлено: 16:10, 28-06-2004 | #9 |
Пользователь Сообщения: 112
|
Профиль | Отправить PM | Цитировать http://www.delphipraxis.net/topic746...ermitteln.html - это хоть и на немецком, зато пахает.
|
Отправлено: 16:10, 28-06-2004 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Ошибка - Ошибка операционной системы | DrimBass | Microsoft Windows 2000/XP | 1 | 19-04-2009 22:16 | |
Ядро операционной системы | alex2704 | Microsoft Windows NT/2000/2003 | 1 | 20-05-2008 01:18 | |
Выбор операционной системы | kul | Программное обеспечение Windows | 8 | 18-05-2008 13:53 | |
Разное - Удаление операционной системы. | VM007 | Microsoft Windows 2000/XP | 2 | 23-01-2008 15:00 | |
Загрузка операционной системы | Orion | Microsoft Windows 95/98/Me (архив) | 13 | 25-05-2005 05:09 |
|