Главная страница
    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
15-1148986185
Dzhin
2006-05-30 14:49
2006.06.25
Йога


15-1148970666
Antropoz
2006-05-30 10:31
2006.06.25
.Net remoting + COM


3-1146119582
vishnia
2006-04-27 10:33
2006.06.25
Использование метода TADOTable.Seek


4-1142453912
Lucefer
2006-03-15 23:18
2006.06.25
Передача сообщения из порождённого TThread в родительский сервис


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