Регистрирует ли реестр HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall \ все подключи? - PullRequest
0 голосов
/ 04 июня 2018

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

Способ открытия реестра и считывания всех подразделов:

//Get all results of the specified registery
string registry_key = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
using (Microsoft.Win32.RegistryKey key = Registry.LocalMachine.OpenSubKey(registry_key))
{
     foreach (string subkey_name in 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}

Итак, подходим к вопросу .....

Имеет ли реестрредактор показать все подразделы?

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

Ответы [ 2 ]

0 голосов
/ 04 июня 2018

По умолчанию 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 при открытии ключа.

0 голосов
/ 04 июня 2018

Это называется «Windows on Windows», и это по замыслу.

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

...