[.NET] Как определить версию OS (пока интересует только Windows)?
то ли в Руссиновиче, то ли в Шрайбере написано, где в реестре и в WinAPI это искать
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion
это для XP и ниже
все кроме битности
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion - аналогичный для XP64, при этом первый ключ тоже работает.
Для висты не знаю - не пользуюсь.
------------
Это программно. Если просто быстро посмотреть - msinfo32
это для XP и ниже
все кроме битности
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion - аналогичный для XP64, при этом первый ключ тоже работает.
Для висты не знаю - не пользуюсь.
------------
Это программно. Если просто быстро посмотреть - msinfo32
System.Environment.OSVersion
Скорее всего то, что нужно.
Скорее всего то, что нужно.
еще есть VerifyVersionInfo
Эта штука не знает про различия 32/64 и Vista/2008 (у них версии ядер одинаковые).
То, что надо. Но хотелось бы средствами .NET'а
Если не найду другого пути, воспользуюсь.
Если не найду другого пути, воспользуюсь.
В ответ на:
VerifyVersionInfo
Мой MSDN про это ничего не знает.
VerifyVersionInfo
Мой MSDN про это ничего не знает.
А мой знает:
Ага!
Но это даёт тоже, что System.Environment.OSVersion. Только через жопу
Но это даёт тоже, что System.Environment.OSVersion. Только через жопу
а как бы в паскаль скрипте (инно сетап) висту определить?
там только по хп включительно. и модули подключать нельзя новые вроде, ни длл.
там только по хп включительно. и модули подключать нельзя новые вроде, ни длл.
GetWindowsVersionEx,
if Version.NTPlatform and (Version.Major = 6) then .
if Version.NTPlatform and (Version.Major = 6) then .
Оставить комментарий
agaaaa
Как определить версию операционной системы, стоящей на компьютере?Желательно различать битность, сервиспаки и имя (XP/Server 2003/Vista/Server 2008).