Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Реестр(прочитать всю ветку)

11K
30 января 2006 года
TheFeaR
24 / / 06.01.2006
Есть некая форма.
Как мне вытянуть всю ветку реестра в форму?(HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run)
Заранее спасибо за ответ
1
31 января 2006 года
kot_
7.3K / / 20.01.2000
Цитата:
Originally posted by TheFeaR
Есть некая форма.
Как мне вытянуть всю ветку реестра в форму?(HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run)
Заранее спасибо за ответ


Что ты имеешь ввиду под - вытянуть всю ветку? Если нужно получить имена ветвей - GetKeyNames(), если нужно получить значения - GetValueNames();

11K
31 января 2006 года
TheFeaR
24 / / 06.01.2006
Цитата:
Originally posted by kot_
Что ты имеешь ввиду под - вытянуть всю ветку? Если нужно получить имена ветвей - GetKeyNames(), если нужно получить значения - GetValueNames();


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

1
31 января 2006 года
kot_
7.3K / / 20.01.2000
Цитата:
Originally posted by TheFeaR
да, неправильно выразился...
нужно узнать все программы из авторана тобишь например в memo1 выташить названия всех ключей из ветки run.


 
Код:
Reg->GetKeyNames(Memo->Lines);

Естественно перед этим необходимо открыть эту самую ран и очистить мемо.
11K
31 января 2006 года
TheFeaR
24 / / 06.01.2006
ОГРОМНОЕ спасибо!
11K
02 февраля 2006 года
TheFeaR
24 / / 06.01.2006
А как сделать тоже самое только из 2 веток реестра?
Сделал так, но, он ругается Cannot convert 'TStringList *' to 'AnsiString'
собсно вопрос как конвертировать это дело или можно как-нибудь по-другому засунуть несколько веток в 1 листбокс?
Код:
TRegistry *ptr = new TRegistry;
TStringList *SecondTree = new TStringList;
AnsiString Sectree;
ptr->RootKey=HKEY_LOCAL_MACHINE;
ptr->OpenKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",0);
ptr->GetValueNames(ListBox1->Items);
ptr->CloseKey();
ptr->RootKey=HKEY_CURRENT_USER;
ptr->OpenKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",0);
ptr->GetValueNames(SecondTree);
ListBox1->Items->Add(SecondTree);
ptr->CloseKey();
delete ptr;
1
02 февраля 2006 года
kot_
7.3K / / 20.01.2000
Цитата:
Originally posted by TheFeaR
Сделал так, но, он ругается Cannot convert 'TStringList *' to 'AnsiString'
собсно вопрос как конвертировать это дело или можно как-нибудь по-другому засунуть несколько веток в 1 листбокс?...


Для того чтобы добавить один стринглист в другой - есть метод Assign - или как второй вариант - цикл. Ты пытаешься одной строке присвоить целый список - потому и ругается.
Всеже справку читать не стесняйся. Там много разных английских слов - заодно и язык выучишь :) Или религия не позволяет справку читать? :)

11K
02 февраля 2006 года
TheFeaR
24 / / 06.01.2006
Оказалось еще проще...
Хелпа небыло...Ща скачал и все нашлось!
ListBox1->Items->AddStrings(SecondTree);
11K
03 февраля 2006 года
TheFeaR
24 / / 06.01.2006
Есть такая фигня DeleteValue(удалить значение)
а вот что то вроде CreateValue(создать тобишь) я так и не нашел... что делать???
1
03 февраля 2006 года
kot_
7.3K / / 20.01.2000
Цитата:
Originally posted by TheFeaR
Есть такая фигня DeleteValue(удалить значение)
а вот что то вроде CreateValue(создать тобишь) я так и не нашел... что делать???


 
Код:
Reg->WriteString("Name","Value");
Reg->WriteInteger("Integer",1);
//etc

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог