Отображает ли реестр HKEY_LOCAL_MACHINE SOFTWARE Microsoft Windows CurrentVersion Uninstall все подразделы

Если я открываю этот реестр и зачитываю все подразделы, он отличается от того, который показывает мой редактор реестра.

Способ, которым я открываю реестр и считываю все подразделы:

 //Получить все результаты указанной строки реестра registry_key = @ "SOFTWARE  Microsoft  Windows  CurrentVersion  Uninstall"; используя (Microsoft.Win32.RegistryKey key = Registry.LocalMachine.OpenSubKey (registry_key  )) {foreach (строка subkey_name в key.GetSubKeyNames ()) {using (RegistryKey subkey = key.OpenSubKey (subkey_name)) {Console.WriteLine (subkey.Name);  }}}  

Это дает мне вывод всех подключей в этом разделе реестра.

В качестве примера я уберу один:

HKEY_LOCAL_MACHINE SOFTWARE Microsoft Windows CurrentVersion Uninstall {FDCFD759-BA24-F0C8-FE83-43513EE6D443}

Когда я проверяю свой реестр редактор. И выполните поиск в этом примере, его нет в указанном месте, но он находится в:

HKEY_LOCAL_MACHINE SOFTWARE WOW6432Node Microsoft Windows CurrentVersion Uninstall {FDCFD759-BA24-F0C8 -FE83-43513EE6D443}

Итак, переходя к вопросу …

Отображает ли редактор реестра все подразделы?

Если есть какие-либо вопросы по моему вопросу или комментариям, я хотел бы услышать!


Он называется «Windows on Windows», и это сделано специально.

Как и Program Files и Program Files (x86) , клавиша WOW6432Node особенный. Когда 32-битные процессы пытаются читать из HKEY_LOCAL_MACHINE SOFTWARE , они вместо этого направляются в HKEY_LOCAL_MACHINE SOFTWARE WoW6432Node , чтобы они не пытались случайно делать то, что доступно только для 64-битных процессов.


По умолчанию Regedit в 64-битной Windows machine показывает 64-битное представление реестра.

32-битные приложения, работающие в 64-битной Windows, по умолчанию видят 32-битное представление. Эти ключи находятся в разделе SOFTWARE WOW6432Node в 64-разрядном реестре.

Информация об удалении хранится в 4 местах реестра на 64-разрядной машине: корни HKEY_CURRENT_USER и HKEY_LOCAL_MACHINE в 64- и 32-разрядных представлениях.

Приложения могут решать, к какому представлению они хотят получить доступ с помощью флага KEY_WOW64_64KEY или KEY_WOW64_32KEY при открытии ключа.


По умолчанию Regedit на 64-битной машине Windows показывает вам 64-битный вид реестра.

32-битные приложения, работающие в 64-битной Windows, по умолчанию видят 32-битное представление. Эти ключи находятся в разделе SOFTWARE WOW6432Node в 64-разрядном реестре.

Информация об удалении хранится в 4 местах реестра на 64-разрядной машине: корни HKEY_CURRENT_USER и HKEY_LOCAL_MACHINE в 64- и 32-разрядных представлениях.

Приложения могут решить, к какому виду они хотят получить доступ, используя флаг KEY_WOW64_64KEY или KEY_WOW64_32KEY при открытии ключа.

Оцените статью
techsly.ru
Добавить комментарий