![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сохранение куска реестра в файл
Arberes © (2006-01-01 23:42:00)Мне нужно сохранить ключ реестра и все его подключи в файл. Чтоб не выдумывать велосипед я решил воспользоваться RegSaveKey и RegRestoreKey. Вообщем, RegSaveKey сохраняет нормально, но RegRestoreKey не может этот файл обратно в реестр запихать. Функция возвращает error code 5, ERROR_ACCESS_DENIED. Что ему не нравится-то??
Arberes (2006-01-04 18:31:00) [1]2Плохиш
Ты меня обижаешь! Конечно же нет ;)
Я сказал "Я их получаю" про привилегии, их я получаю с помощью TTokenPrivileges...
Плохиш (2006-01-04 15:10:00) [2]
> Arberes © (03.01.06 16:30) [9]
> RegOpenKeyEx(HKEY_CLASSES_ROOT,PChar('123'),0, KEY_ALL_ACCESS,R);
Я надеюсь ты не понимаешь под этим "я их получаю"?
Arberes (2006-01-04 14:42:00) [3]2fellix
Я знаю... А HKEY_CURRENT_USER это альяс на один из подключей в HKEY_USERS, конкретно на тот, который и описывает текущего пользователя... Так что в работе с реестром теоритически можно работать только с HKLM и HKU =)
fellix (2006-01-03 18:59:00) [4]> Arberes © (03.01.06 18:31) [12]
MSDN: ... HKEY_CLASSES_ROOTis an alias for the HKEY_LOCAL_MACHINE\Software\Classes...
Arberes (2006-01-03 18:31:00) [5]Все ясно... В HKCR нельзя файлы загружать... Можно только в HKLM\Software и, возможно, в HKU... Больше никуда =(
Gero (2006-01-03 18:06:00) [6]> И как их получить?
Их можно получить, попросив об этом системного администратора.
Leonid Troyanovsky (2006-01-03 16:40:00) [7]
> homm © (03.01.06 00:58) [8]
> гн Anatoly Podgoretsky наверное имеет ввиду права самих
> ключей реестра на запись как у файлов, только сформулировать
> не может почему-то ;)
Кто-кто не может? Cпасение утопающих, дело рук самих утоп.
Что, собс-но, и было четко сформулировано.
В отличии от загадочного "права самих ключей реестра на запись"
--
Regards, LVT.
Arberes (2006-01-03 16:30:00) [8]Ладно, вот как я это делаю...
procedure TForm1.Button1Click(Sender: PObj);
var R:HKEY;
begin
RegOpenKeyEx(HKEY_CLASSES_ROOT,PChar('123'),0,KEY_ALL_ACCESS,R);
RegRestoreKey(R,'d:\1.dat',0);
RegCloseKey(R);
end;
Вроде есть все что нужно...
homm (2006-01-03 00:58:00) [9]2 Arberes
гн Anatoly Podgoretsky наверное имеет ввиду права самих ключей реестра на запись как у файлов, только сформулировать не может почему-то ;)
Anatoly Podgoretsky (2006-01-03 00:07:00) [10]Откуда нам то знать, как неправильно ты делаешь.
Пока асбтрактный разговор. Единственая техническая деталь код ошибки.
Так просто трепешься, но это твое дело.
Arberes (2006-01-02 23:39:00) [11]И как их получить?
Anatoly Podgoretsky (2006-01-02 23:08:00) [12]Права на запись
Arberes (2006-01-02 22:51:00) [13]Например, каких прав мне может не хватать??
Anatoly Podgoretsky (2006-01-02 22:31:00) [14]А имею в виду все права, а не только привилегии.
Arberes (2006-01-02 22:15:00) [15]Если вы имеете в виду привилегии SE_BACKUP_NAME (Для RegSaveKey)и SE_RESTORE_NAME (для RegrestoreKey) то я их получаю... Без получения там пишет совсем другие ошибки... А так, как я уже сказал, RegSaveKey работает отлично, но для RegRestoreKey - Ах, секс...
Anatoly Podgoretsky (2006-01-01 23:46:00) [16]Прав нет.