Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Delphi - Registry 
:(
    Опции темы
KAI
Дата 5.1.2004, 23:23 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Как мне считать все, что есть в реестре по данному адресу, и записать значения в ListView?

Что-то типа
Registry.OpenKey('путь',true);
while ЕСТЬ КЛЮЧИ do
ListView1.Columns[0].Text:=здесь ИМЯ ключа;
ListView1.Columns[1].Text:=здесь ЗНАЧЕНИЕ ключа;
end;

Писал от руки, могут быть ошибки...
Заранее спасибо.
  Вверх
Vex
Дата 6.1.2004, 00:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


кацапосрачмученiкъ
****


Профиль
Группа: Экс. модератор
Сообщений: 3103
Регистрация: 28.3.2002
Где: strawberry fields

Репутация: 1
Всего: 88



Попробуй GetKeyNames(x:TString); ?

Наверное тебе надо не значения ключа, а параметра, тогда GetValueNmaes(x:StringList);

Это сообщение отредактировал(а) Vex - 6.1.2004, 00:32


--------------------
Слава Україні.
PM   Вверх
KAI
Дата 6.1.2004, 01:18 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











GetKeyNames говорит, что не правильный индификатор.
ListView1.Columns[1].Text - тоже ошибка... Как записать правильно?
  Вверх
KAI
Дата 6.1.2004, 01:22 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Со вторым разобрался...
Первое пишу так:

Registry.OpenKey('путь',true);
while GetKeyNames(Registry) do
ListView1.Columns[0]:=GetValueNames;

Помогите пожалуйста, замучался искать...
  Вверх
Unregistered
Дата 6.1.2004, 01:34 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Здорово. Теперь ошибка в типах... Что за тип такой "TListColumn"? Как можно вписать в ListView1.Columns тип String? Сколько же ошибок... Ребят, выручайте!
  Вверх
Unregistered
Дата 6.1.2004, 01:35 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ошибка в типах + я так и не исправил верхнюю ошибку...
  Вверх
Vex
Дата 6.1.2004, 02:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


кацапосрачмученiкъ
****


Профиль
Группа: Экс. модератор
Сообщений: 3103
Регистрация: 28.3.2002
Где: strawberry fields

Репутация: 1
Всего: 88



Код

GetKeyNames(Registry)


Там должен стоять параметр типа TStringList.
Короче, вот я набросал код, за правильность не ручаюсь, не компилил.

Код

var
 Registry:TRegistry;
 MyStringList:TStringList;
 i:integer;
begin
MyStringList:=TStringList.Create;
Registry:= TRegistry.Create;
Registry.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run',true);
Registry.GetValueNames(MyStringList);
for i:=1 to MyStringList.Count do begin
ValueListEditor1.Cells[2,i]:=MyStringList.Strings[i];
ValueListEditor1.Cells[1,i]:=Registry.ReadString(MyStringList.Strings[i]);
end;

end;




--------------------
Слава Україні.
PM   Вверх
Vex
Дата 6.1.2004, 02:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


кацапосрачмученiкъ
****


Профиль
Группа: Экс. модератор
Сообщений: 3103
Регистрация: 28.3.2002
Где: strawberry fields

Репутация: 1
Всего: 88



Учти, что не учитываются типы параметров, так что _в чужом_ ключе, скорей всего, будут рантайм ерроры, если же ты уверен что все параметры будут строковые, то вперд smile.gif


--------------------
Слава Україні.
PM   Вверх
<Spawn>
Дата 6.1.2004, 06:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Око кары:)
****


Профиль
Группа: Экс. модератор
Сообщений: 2776
Регистрация: 29.1.2003
Где: Екатеринбург

Репутация: 44
Всего: 64



Vex Для этого можно сначала проверить тип ключа, после чего вызвать соответствующий метод:

Код
case Reg.GetDataType(MyStringList[i]) of
 rdUnknown:;
 rdString:
 begin
   ValueListEditor1.Cells[2,i]:=MyStringList.Strings[i];
   ValueListEditor1.Cells[1,i]:=Registry.ReadString(MyStringList.Strings[i]);
 end;
 rdInteger:
 begin
   ValueListEditor1.Cells[2,i]:=MyStringList.Strings[i];
   ValueListEditor1.Cells[1,i]:=IntToStr(Registry.ReadInteger(MyStringList.Strings[i]));
 end;
// И т.д.
end;



--------------------
"Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков.
PM MAIL ICQ   Вверх
Unregistered
Дата 6.1.2004, 08:24 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ребята, TListView, а не TValueEditor пожалуйста. ListView1.Columns:=MyStringList.Strings[i]; - выдает ошибку типов...
  Вверх
<Spawn>
Дата 6.1.2004, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Око кары:)
****


Профиль
Группа: Экс. модератор
Сообщений: 2776
Регистрация: 29.1.2003
Где: Екатеринбург

Репутация: 44
Всего: 64



Unregistered ну это понятное дело, что ошибка - Columns тип integer, а свойство Strings возвращает string. Юзай TValueListEditor


--------------------
"Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков.
PM MAIL ICQ   Вверх
Vex
Дата 6.1.2004, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


кацапосрачмученiкъ
****


Профиль
Группа: Экс. модератор
Сообщений: 3103
Регистрация: 28.3.2002
Где: strawberry fields

Репутация: 1
Всего: 88



Цитата
Vex Для этого можно сначала проверить тип ключа, после чего вызвать соответствующий метод:


Знаю, предпологается, что товарищ лезет в свой ключ, где все параметры стринговые. smile.gif


--------------------
Слава Україні.
PM   Вверх
Unregistered
Дата 6.1.2004, 21:01 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Можно ли у TValueListEditor создать 3 колумна? Я написал вроде 3 строки... А он выводит только 2. Есть ли у кого-нить хороший пример работы с этим компонентом?
  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0505 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.