как записать в HKEY_LOCAL_MACHINE

windows C# реестр HKEY_LOCAL_MACHINE

Как программой на C# записать данные в регистр HKEY_LOCAL_MACHINE

Примечание:
Нет не работает
в HKEY_CURRENT_USER можна а в HKEY_LOCAL_MACHINE не пишет

Примечание:
Оно то написало что занесено но в регистре ничего нет

Примечание:
ОС-64
.ехе-32
в етом проблема?

Примечание:
OpenBaseKey - для него что надо подключить?

Примечание:
нет using Microsoft.Win32; уже подключил и ошибки

Примечание:
а как если на 2 фреймворке программа

Примечание:
Написал вот код и не работает что не так

public void SetAutorunValue()
{
using (RegistryKey localMachineKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64))
{
string keyValueInt = "Test";
string subKey = "SOFTWARE\\Test\\";
try
{
localMachineKey.CreateSubKey(subKey);
localMachineKey.SetValue("Test", keyValueInt);
localMachineKey.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}

Примечание:
тоесть как папку оно то создаёт но строковый параметр Test нет

Примечание:
Искренне благодарствую PetSerAl
Ответы:
>> Оно то написало что занесено но в регистре ничего нет
Через regedit смотришь? А обновил данные (F5 или Вид -> Обновить)?
Это не проблемма, это средство совместимости: чтобы 32-х битные приложения не конфликтовали со своими 64-х битными собратьями им предоставляется отдельный вид ветки HKLM\Software, который находится в HKLM\Software\Wow6432Node (WoW это Windows on Windows, а не World of Warcraft). Чтобы из 32-х битного приложения обратится к реестру так, как его видит 64-х битное надо использовать следующий код:
using(RegistryKey localMachineKey64=RegistryKey.OpenBaseKey(RegistryHive.LocalMachine,RegistryView.Registry64)){
   ...
}
2 Примечание №6
Ну тогда либо переходить на .NET Framework 4, либо напрямую вызывать WinApi, либо компилировать программу как 64-х битную.
localMachineKey.SetValue("Test", keyValueInt); //так Вы создаёте параметер Test непосредственно в разделе HKEY_LOCAL_MACHINE


12 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.