Главная страница
    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.009 c
2-1149514671
VitV
2006-06-05 17:37
2006.06.25
Сокеты в Дэлфях.


15-1148872897
DmiSb
2006-05-29 07:21
2006.06.25
Можно ли уменьшить размер vcl50.bpl ,


6-1139935671
Korneley
2006-02-14 19:47
2006.06.25
Минимальный таймаут для PING


2-1149644505
Никос
2006-06-07 05:41
2006.06.25
Типы


15-1149067188
TUser
2006-05-31 13:19
2006.06.25
Студенты и промт :)





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский