Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.06.25;
Скачать: [xml.tar.bz2];

Вниз

реестр   Найти похожие ветки 

 
ksenia ©   (2006-06-07 14:09) [0]

Здравствуйте!
Помогите, пожалуйста....пытаюсь считать из реестра значение параметра и не получается,  если сказать
RegIni:=TRegIniFile.Create("Software");
RegIni.OpenKey("Software\My Company\My Program", true);
str:=RegIni.ReadString("Settings","Reg","N"), считывается N, а не значение, кот. стоит в параметре...?!

а если написать
RegIni:=TRegIniFile.Create("Software");
RegIni.OpenKey("Software\My Company\My Program\Settings", true);
str:=RegIni.ReadString("Reg");
то ругается "Not enough actual parameters"

а если написать
RegIni:=TRegIniFile.Create("Software");
RegIni.OpenKey("Software\My Company\My Program\Settings", true);
str:=RegIni.ReadString("Reg","N");
то ругается "Not enough actual parameters"

что-то я уже ничего не понимаю....Как правильно?


 
Сергей М. ©   (2006-06-07 14:52) [1]


> из реестра


> Как правильно?


"Правильным" будет использование класса TRegistry, а не TRegIniFile


 
ksenia ©   (2006-06-07 16:29) [2]

а по конкретней нельзя?


 
Iehbr ©   (2006-06-07 16:33) [3]

Вот пример из справки, ежели самой лень посмотреть:

procedure TForm1.Button1Click(Sender: TObject);
var
 Reg: TRegistry;
 Val:TStringList;
 I:Integer;
begin
 Reg:=TRegistry.Create;
 try
   Val:=TStringList.Create;
   try
     Reg.RootKey:=HKEY_LOCAL_MACHINE; // Section to look for within the registry
     if not Reg.OpenKey(Edit1.Text,False) then
       ShowMessage("Error opening key")
     else
     begin
       Reg.GetValueNames(Val);

       for I:=0 to Val.Count-1 do
       begin
         ShowMessage(Edit1.Text + Chr(13) +
                     "has an Entry Called "+Val.Strings[I]+Chr(13)+
                     "With a Value of "+Reg.ReadString(Val.Strings[I]));
       end;
       if MessageDlg("Ok to delete the key and lose all these values?"
                    ,Mtinformation,[mbYes,mbNo],0)=mryes then
          Reg.DeleteKey(Edit1.Text);

     end;
   finally
     Val.Free;
   end;
 finally
   Reg.Free;
 end;
end;


 
Тимофей Юрьевич ©   (2006-06-07 16:34) [4]

var
 Reg: TRegistry;
begin
 Reg := TRegistry.Create;
 try
   Reg.RootKey := HKEY_CURRENT_USER;
   if Reg.OpenKey("\Software\Microsoft\Windows\CurrentVersion\RunOnce", True) then
   begin
     Reg.WriteString("MyApp",""" + ParamStr(0) + """);
     Reg.CloseKey;
   end;
 finally
   Reg.Free;
   inherited;
 end;

вот пример



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

Форум: "Начинающим";
Текущий архив: 2006.06.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.016 c
15-1149153411
Shaman_
2006-06-01 13:16
2006.06.25
Написал утилиту. Прошу помочь в тестировании


15-1148781301
pargo
2006-05-28 05:55
2006.06.25
Естественный отбор


15-1149163564
tvv
2006-06-01 16:06
2006.06.25
Работа с TBitmap-ом


15-1149225661
Ega23
2006-06-02 09:21
2006.06.25
Deep Purple Popurri


2-1149690261
irena
2006-06-07 18:24
2006.06.25
BDE некорректно работает с длинными строками?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский