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

Вниз

Работа с реестром Windows   Найти похожие ветки 

 
Эдуард   (2003-06-10 05:05) [0]

Доброго времени суток!
Кусок программы выглядит так:
Reg:=TRegistry.Create; Reg.RootKey:=HKEY_CURRENT_USER;
try
{сначала пытаюсь узнать, а есть ли данный путь в реестре}
if not Reg.OpenKey("Software\PROG1\Ver 1.0\",false)
then
begin
{если нет, то я его создаю. именно так я сделал за тем, чтобы
в последствии, в программе, знать был указанный путь или нет}
WasPathExists:=false;
Reg.CloseKey; Reg.OpenKey("Software\RSTL-Soft\Ver 1.0\",true);
end;
if Reg.KeyExists("Value1")
then Value1:=Reg.ReadInteger("Value1")
else Reg.WriteInteger("Value1",Value1);
{если ключа "Value1" по вышеуказанному пути нет, то он создается и в его записывается значение по умолчанию. если ключ есть, то с него читается значение}
...

В разделе "Software\RSTL-Soft\Ver 1.0\" , кроме переменных (ключей)есть еще подразделы (это так, для справки).

Проблема в том, что независимо от того, существует ключ "Value1" или нет, функция Reg.KeyExists("Value1") всегда возвращает False.

В чем здесь может быть дело?

/Программу делаю на Delphi 6, ОС - WinXP/


 
Spawn   (2003-06-10 06:36) [1]

KeyExists проверяет наличие ключа в реестре, а тебе, видимо нужно проверять значение ключа через ValueExists. То есть твой код неработоспособный - в начале ты проверяешь наличие ключа, а потом, в зависимости от результата, записываешь значение ключа в уже открытый тобою ключ ("Software\RSTL-Soft\Ver 1.0\"). Если же тебе необходимо записывать значения в тот ключь, то сначала создай его.



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

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

Наверх




Память: 0.44 MB
Время: 0.009 c
3-81582
Weare
2003-07-29 18:19
2003.08.25
Запрос SQL для TQuery.


3-81560
alleb
2003-07-30 16:57
2003.08.25
TBytesField


14-81937
____Nikolay
2003-08-07 05:58
2003.08.25
Сегодня обнаружил своего клона :)


1-81647
Zorik
2003-08-12 12:06
2003.08.25
запихнуть массив в TMemoryStream


1-81787
ivc_andr
2003-08-14 10:20
2003.08.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
Английский Французский Немецкий Итальянский Португальский Русский Испанский