Определить версию Windows, издание и пакет обновления АВТОНОМНОГО ОБРАЗА ДИСКА

#windows #version #registry

#Windows #версия #реестр

Вопрос:

Как определить, используя только реестр: Версию Windows (XP, Vista, 7). Издание (Home Premium, Professional, Ultimate). И уровень пакета обновления (бета, RTM, SP1, SP2).

Это связано с тем, что я выполняю ремонт в автономной системе. Реестр автономных систем можно смонтировать и получить к нему доступ.

Ответ №1:

Используйте значения в HKLMSOFTWAREMicrosoftWindows NTCurrentVersion . Я полагаю, вы знаете, где найти этот куст?! Соответствующий куст можно найти под %SystemRoot%System32config названием SOFTWARE .

Примечание: вы можете попытаться проверить свои результаты, просмотрев некоторые хорошо известные файлы (например, kernel32.dll , ntdll.dll ) и их информационный ресурс о версии (то, что вы ищете, это версия файла: с, например GetFileVersionInfo() ).

Значения редакции, если это необходимо, можно найти на HKLMSYSTEMCurrentControlSetControlProductOptions . Смотрите здесь.

Комментарии:

1. Для загрузки hive вы используете regedit . Вы можете сделать это с любого компьютера с Windows и это не должно повлиять на вашу установку. Просто загрузите hive и выберите какое-нибудь временное имя для новой ветви. Подробнее здесь: zeda.nl/index.php/en/load-user-registry-hive-in-regedit

Ответ №2:

Все, что вам нужно, есть в HKLMSOFTWAREMicrosoftWindows NTCurrentVersion .

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

Комментарии:

1. EditionID, CSDVersion, BuildLab, название продукта и т.д. … Там много избыточности, и я думаю, что ни один из них не является надежным. Вероятно, наиболее описательным является BuildLab; для меня это: 7601.win7sp1_rtm.101119-1850 . Однако вам все равно понадобится идентификатор редакции ( HomePremium и т.д.).

2. есть ли тогда лучший способ? например, запрашивать версию файла какого- какого системного файла?

3. последний можно найти по адресу HKLMSYSTEMCurrentControlSetControlProductOptions

4. @unixman83: Запрос файлов (решение от @STATUS) будет работать для большинства приложений, но не для версии (Home Premium vs Ultimate).

5. @unixman83: подойдет любой известный файл. Убедитесь, что это подписанная (и действительная) версия файла. Что должно быть возможно начиная с XP. В 2000 году, я думаю, не все были подписаны.

Ответ №3:

Используя Linux, здесь Ubuntu, вы можете использовать chntpw .

Я сделал это:

 sudo apt install chntpw
chntpw -e /path/to/windisk/Windows/System32/config/SOFTWARE
cat MicrosoftWindows NTCurrentVersionProductName
  

и было сказано, что версия была Windows 10 Home . Обратите внимание, что заглавные буквы в пути могут отличаться в разных версиях, поэтому посмотрите, не работает ли это. В одном из приложений также упоминается RegBack папка, указывающая путь к нему (извините, я забыл где).

Дополнительные сведения можно найти с помощью других ключей. Чтобы перечислить другие ключи в CurrentVersion , находясь в chntpw , выполните

 ls MicrosoftWindows NTCurrentVersion