Мне нужно прочитать реестр и найти версию Windows 2003. Я могу найти версию Windows 2008 и Windows 2008 R2, просмотрев:
HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows NT \ CurrentVersion \ @ProductName
и я вижу что-то вроде:
«Microsoft Windows Server 2008 R2 Standard» или «Microsoft Windows Server 2008 R2 Enterprise»
Однако когда я смотрю на это значение в Windows 2003, я вижу только:
«Microsoft Windows Server 2003 R2» без информации о выпуске (например, Standard или Enterprise).
Я искал повсюду в реестре что-то, что могло бы помочь мне найти информацию о редакции, но не могу найти ее. Я вижу это в системной информации, но нигде в реестре ?!
Мне нужна эта информация, так как мне нужно решить, с какой из них я работаю для инвентаризации.
Более переносимым и, вероятно, надежным вариантом будет проверка этих значений через WMI - вам будет интересен класс Win32_OperatingSystem.
Технет есть краткий учебник по коду vbscript по этому классу.
Я не знаю, нужно ли это делать через реестр, но команда «winver» в поле «Выполнить» возвращает эту информацию.
Это настоящий взлом, но я думаю, что нашел ОТВЕТ!
Если вы перейдете в HKLM \ Software \ Microsoft \ Windows NT \ CurrentVersion \ @ProductId, первые 5 цифр перед тире будут номером версии. Я могу идентифицировать это оттуда.
Может ли кто-нибудь подтвердить или опровергнуть это?