Я использую Visual C # 2010 и у меня проблемы с настройкой разделов реестра.Я предположил, что это было связано с тем фактом, что я сначала не запускал его как администратор, но я попытался создать Release, а затем щелкнуть правой кнопкой мыши исполняемый файл и выбрать «Запуск от имени администратора», но безрезультатно.Я также попытался использовать класс RegistryPermission, который, кажется, не имеет никакого значения.
Вот код:
RegistryKey rkey = Registry.LocalMachine;
// RegistryPermission f = new RegistryPermission(
// RegistryPermissionAccess.Write | RegistryPermissionAccess.Read,
// @"HKEY_LOCAL_MACHINE\SOFTWARE\Company\Product");
/**********************/
/* set registry keys */
/**********************/
RegistryKey wtaKey = rkey.OpenSubKey(@"SOFTWARE\Company\Product", true);
try
{
wtaKey.SetValue("key1", 123);
wtaKey.SetValue("key2", 567);
wtaKey.SetValue("key3", textbox.Text);
wtaKey.SetValue("key4", "some string");
}
catch (UnauthorizedAccessException ex)
{
MessageBox.Show(ex.Message);
return;
}
Это дает мне сообщение об ошибке из исключения каждый раз, когда я запускаюэто, даже с «Запуск от имени администратора».Любые идеи, как я могу обойти это?Это кажется странным, потому что моя стандартная учетная запись позволяет мне войти в regedit и вручную изменить эти значения без проблем.