Получить список ключей из x32 и x64 реестра, Framework 4.0

215
04 ноября 2021, 13:00

Есть два раздела реестра, находящиеся по пути

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

(для x32 и для x64). Для того чтобы открыть конкретный раздел, рекомендуют использовать OpenBaseKey:

var x32Tree = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32);
var x64Tree = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64);
var a = x32Tree.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall").GetSubKeyNames();
var b = x64Tree.OpenSubKey("SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall").GetSubKeyNames();

Я ожидаю увидеть разные коллекции а и б, но, на выходе, я вижу одну и ту же коллекцию, сформированную из запроса к x64 ветке реестра (значений что есть в x32 ветке в обоих коллекциях нет). Редактор реестра видит обе ветки, соответственно, и значения которых я не могу вытащить там тоже есть.

Как быть? Есть ли способы получить коллекцию из 32битной ветки, и отдельную коллекцию для x64 ветки со соответствующими именами ключей из этих веток?

READ ALSO
Вывод картинки по надписи из textbox на picturebox

Вывод картинки по надписи из textbox на picturebox

Введя нужный месяц в textbox1 нужно, чтобы по нажатию на зеленую кнопку в окне picturebox1 появилась нужная картинкаКартинки уже лежат в папке проекта...

158
Unity3D: доступ к данным MS SQL

Unity3D: доступ к данным MS SQL

Не являюсь специалистом по Unity, возникла задача "допиливания" кода

202
Openweathermap не работает без VPN

Openweathermap не работает без VPN

Нужно создать приложение погды на C#В теории все просто, но на практике все туторы на С# котороые я находил используют openweathermap, а у меня на этом...

161