Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Major/Minor OS Version


harisma ©   (2009-11-13 18:44:00) 

Для 32 битных систем в дельфе есть 2 метода, чтоб получить информацию о ОС: Win32MajorVersion и Win32MinorVersion. А какие методы существуют для той же цели в x64 OC?


DVM   (2009-11-20 19:51:00) [1]


> ms   (20.11.09 17:29) [12]
> у меня с реестра берет проблем нет. кому это надо заменять
> записи.

MS сама поменяет и всего делов. Вот раньше говорила MS не надо писать в Program Files, но писать было можно, потом вышла виста и все поняли, что надо было слушать MS.


ms   (2009-11-20 17:29:00) [2]

у меня с реестра берет проблем нет. кому это надо заменять записи. или для какой-то супер безопасности пишите софт.


DVM   (2009-11-16 12:31:00) [3]


> Демо ©   (16.11.09 11:42) [9]
> Вроде бы на примере расписано...
>
> http://msdn.microsoft.com/en-us/library/ms724429(VS.85).
> aspx

Я о нем и говорил.
Хотя пример уже обновили смотрю.


Дмитрий Белькевич   (2009-11-16 11:50:00) [4]

>либо пашет только на ХР, на висте определяет как ХР.

Странно. Ни разу не видел. Ну если только совместимость включена. Ну так - на то она и совместимость.


Демо   (2009-11-16 11:42:00) [5]

Вроде бы на примере расписано...

http://msdn.microsoft.com/en-us/library/ms724429(VS.85).aspx


DVM   (2009-11-16 11:13:00) [6]


> Anatoly Podgoretsky ©   (16.11.09 09:21) [7]


> Исчерпывающая и лостоверная информация только в MSDN

Это не совсем так. Конечно в MSDN описаны все функции, но не описаны приемы. В MSDN есть лишь один пример определения версии да и то неполный и устаревший.


Anatoly Podgoretsky   (2009-11-16 09:21:00) [7]

> DVM  (13.11.2009 23:19:05)  [5]

Исчерпывающая и лостоверная информация только в MSDN
вот точка входа и далее по ссылкам
http://msdn.microsoft.com/en-us/library/ms724451(VS.85).aspx


  (2009-11-15 02:59:00) [8]

Удалено модератором


DVM   (2009-11-13 23:19:00) [9]


> Win32MajorVersion и Win32MinorVersion
>
> бывает не срабатываю по большенству примеров в рунете!

Вероятно дело то не в этих константах, а в их неправильном применении. Эти константы содержат лишь значения которые возвращает GetVersion().
Для точного определения версии этих констант недостаточно в ряде случаев, требуется привлечение функций GetVersionEx(), GetProductInfo(), GetNativeSystemInfo(), GetSystemMetrics() и некоторых других.

Определять версию через реестр MS не рекомендует, т.к. не гарантирует, что содержимое и местоположение ключа в реестре будет неизменным.

Вот здесь приведена исчерпывающая информация по правильному получению версии, там же готовый модуль http://www.delphidabbler.com/articles?article=23


ms   (2009-11-13 21:56:00) [10]

Win32MajorVersion и Win32MinorVersion

бывает не срабатываю по большенству примеров в рунете!
либо пашет только на ХР, на висте определяет как ХР.. вот я и говорю, второй вариант - реестр, там более подробная инфа об ОС в полной версией.


DVM   (2009-11-13 20:04:00) [11]


> А какие методы существуют для той же цели в x64 OC?

методы те же самые.


DVM   (2009-11-13 20:03:00) [12]


> советую хапать информацию из реестра, например.

А я не советую.


>  if OSVersionInfo.dwPlatformId = VER_PLATFORM_WIN32_NT then

Это неверно, т.к. условие выполняется и под x64 системами


ms   (2009-11-13 19:12:00) [13]

Так же, только проверка

  if OSVersionInfo.dwPlatformId = VER_PLATFORM_WIN 32_NT then

советую хапать информацию из реестра, например.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion


Наверх

Титульная страница Поиск, карта сайта Написать письмо