Я пытаюсь записать быстрое приложение для изменения некоторых ключей реестра. Когда я просматриваю через RegEdit, я могу изменить и удалить ключи без проблем.
Но когда я пытаюсь использовать RegistryKey.DeleteSubKey()
это бросает UnauthorizedAccessException
.
Там какой-либо путь состоит в том, чтобы получить полномочия сделать это? Кроме того, почему была бы проблема, если моя учетная запись пользователя, очевидно, имеет доступ для внесения изменений?
Править:
Вот некоторый код
RegistryKey reg;
try
{
reg = Registry.CurrentUser.OpenSubKey(BaseKey);
reg.DeleteSubKey("{" + Item.Guid.ToString() + "}");
}
catch
{
return false;
}
Попробуйте вместо этого, сначала откройте его как чтение / запись, а не только для чтения:
RegistryKey reg;
try
{
reg = Registry.CurrentUser.OpenSubKey(BaseKey, true); //<--over here!
reg.DeleteSubKey("{" + Item.Guid.ToString() + "}");
}
catch
{
return false;
}