DeleteSubKey UnauthorizedAccessException

Я пытаюсь записать быстрое приложение для изменения некоторых ключей реестра. Когда я просматриваю через RegEdit, я могу изменить и удалить ключи без проблем.

Но когда я пытаюсь использовать RegistryKey.DeleteSubKey() это бросает UnauthorizedAccessException.

Там какой-либо путь состоит в том, чтобы получить полномочия сделать это? Кроме того, почему была бы проблема, если моя учетная запись пользователя, очевидно, имеет доступ для внесения изменений?

Править:

Вот некоторый код

RegistryKey reg;

try
{
    reg = Registry.CurrentUser.OpenSubKey(BaseKey);
    reg.DeleteSubKey("{" + Item.Guid.ToString() + "}");
}
catch
{
    return false;
}
17
задан bluish 10 June 2014 в 12:15
поделиться

1 ответ

Попробуйте вместо этого, сначала откройте его как чтение / запись, а не только для чтения:

RegistryKey reg;

try
{
    reg = Registry.CurrentUser.OpenSubKey(BaseKey, true); //<--over here!
    reg.DeleteSubKey("{" + Item.Guid.ToString() + "}");
}
catch
{
    return false;
}
46
ответ дан 30 November 2019 в 10:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: