Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.12;
Скачать: CL | DM;

Вниз

Проблема с реестром.   Найти похожие ветки 

 
Ангела ©   (2006-09-29 16:17) [0]

Необходимо прочитать значение из реестра.
Необходимый параметр File0

Software
 Proramms
    Programm1
       Setting
          File0

Все работает нормально, пока в ключе "Programm1" нет тире.
Если написать "Pro-gramm1" (а так оно и есть в реестре), то прочитать не удается
вот код

procedure TForm1.Button1Click(Sender: TObject);
var
FIniFile:TRegIniFile;
b:bool;
begin
 Label3.Caption:= "Error";

 FIniFile:= TRegIniFile.Create("Software");
 b:=FIniFile.OpenKey("Proramms\Pro-gramm1",false);

 if b then Label3.Caption:= "Прочитано";


 Label1.Caption:= FINIFile.ReadString("Setting","File0","00000");
end;

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


 
Elen ©   (2006-09-29 16:28) [1]


> Ангела

У меня все читается :-| хоть с тире хоть без (соответствуя в регистре). Почему такие выводы? строка в реестре случайно #0 не содержит?


 
Игорь Шевченко ©   (2006-09-29 16:31) [2]


> То есть не получается получить данные, если в ключе есть
> тире. Как это обойти?


Странно. Получается.

HKEY_CURRENT_USER\Software\Test\Op-tions\Options

строковый параметр Test со значением notest

procedure TForm1.Button1Click(Sender: TObject);
var
 F: TRegIniFile;
begin
 F := TRegIniFile.Create("SOFTWARE");
 try
   if F.OpenKey("Test\Op-tions", false) then
     ShowMessage(F.ReadString("Options", "Test", ""));
 finally
   F.Free;
 end;
end;


 
Ангела ©   (2006-09-29 16:40) [3]

чертовщина какая-то. а у меня не читает
создала и Test и Op-tions

procedure TForm1.Button1Click(Sender: TObject);
var
F: TRegIniFile;
begin
F := TRegIniFile.Create("SOFTWARE");
try
  if F.OpenKey("Test\Op-tions", false) then
    ShowMessage(F.ReadString("Options", "Test", ""));
finally
  F.Free;
end;
end;

месседжа не показывает...


 
Dmitrij_K   (2006-09-29 16:40) [4]

В ошибке что пишет?
ShowMessage(SysErrorMessage(GetLastError()));


 
stone ©   (2006-09-29 16:41) [5]


> b:=FIniFile.OpenKey("Proramms\Pro-gramm1",false);

Ключ будет открыт, если существует. А он у тебя точно существует?


 
Elen ©   (2006-09-29 16:44) [6]


> stone

И существует ли в CURRENT_USER?


 
Ангела ©   (2006-09-29 16:55) [7]

поняла ошибку.
по умолчанию открывается раздел Current_user
А у меня все лежит в Local_machine

Спасибо!



Страницы: 1 вся ветка

Текущий архив: 2006.11.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.048 c
15-1161603729
kan
2006-10-23 15:42
2006.11.12
Проверка диска при загрузке WinXP


2-1161675853
kirillrepin
2006-10-24 11:44
2006.11.12
TStringList


15-1161574022
Slider007
2006-10-23 07:27
2006.11.12
С днем рождения ! 23 октября


6-1151062890
antoxa2005
2006-06-23 15:41
2006.11.12
Подскажите, как решается задача "связки" БД сайта (MySQL) c ,базо


1-1159785290
Still Swamp
2006-10-02 14:34
2006.11.12
Возможно ли отпечатать через TPrinter обычную строку?