Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как можно считать значение DWORD из реестра? [D4, Win95/98]


Lexa18 ©   (2002-08-14 12:53:00) 

Буду признателен.


Lexa17   (2002-08-14 18:51:00) [1]

В классе ошибки нет, я просмотрел registry.pas. А на сайте Делфи ни хрена, извините, нет, даже патчей для Делфи4


Skier   (2002-08-14 18:27:00) [2]

>Lexa18

> А откуда их скачать-то?


С оффициального сайта...



> И потом, Анатолий сказал, что это от RunTime зависит


Всё может быть...Но и ошибка в классе TRegistry тоже
не исключена...


Lexa18   (2002-08-14 18:22:00) [3]

А откуда их скачать-то? И потом, Анатолий сказал, что это от RunTime зависит


Skier   (2002-08-14 18:19:00) [4]

>Lexa18
Скачиваешь пачи...и ставишь (к D4 их аж 3 штуки)


Lexa18   (2002-08-14 18:17:00) [5]

Здрасте, а от куда же, как не из компилятора? Чем хуже, чем из среды? При запуске из среды выскакивает уже моё сообщение, которое я описал как MessageDlg("Ошибка при просмотре или создании ветви реестра",mtError,[mbOK],0); И ещё, как мне Делфи пропатчить?


Anatoly Podgoretsky   (2002-08-14 17:49:00) [6]

Lexa18 (14.08.02 17:35)
Это же сообщение не компилятора, а рантайм, кстати ты случайно не из Дельфи запускаешь, если так или настрой Дельфи или запускай вне среды.


Skier   (2002-08-14 17:47:00) [7]

>Lexa18
Может... В Borland-e тоже люди сидят... и они ошибаются...
У меня кстати и в D4 твой код работает
(но у меня номер сборки 5.108)

Хорошо бы тебе Delphi пропачить...


Lexa18   (2002-08-14 17:42:00) [8]

5.37, а что это может повлиять?


Skier   (2002-08-14 17:40:00) [9]

>Lexa18
Всё это очень странно...Код правильный...
(по крайней мере у меня в D5 всё это работает)
А какой у тебя номер сборки D4 ?


Lexa18   (2002-08-14 17:35:00) [10]

Текст ошибки: Project Project1.exe raised exception class ERegistryException with message "Failed to get data for "NoDesktop"". Process stoped....


Anatoly Podgoretsky   (2002-08-14 17:08:00) [11]

Какую ошибку выдает компилятор?
Да и перемести IsExist.RootKey:=HKEY_CURRENT_USER; сразу за try или совсем ликвидируй, это по умолчанию


Skier   (2002-08-14 16:58:00) [12]

>Lexa18
Хм. А у меня твой код работает...


Lexa18   (2002-08-14 16:52:00) [13]

var IsExist:TRegistry;
begin
IsExist:=TRegistry.Create;
IsExist.RootKey:=HKEY_CURRENT_USER;
try
if IsExist.OpenKey("\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer",false) then
begin
if IsExist.ValueExists("NoDesktop") then
begin
if IsExist.ReadInteger("NoDesktop")=1 then
begin
HideAllBox.Checked:=true;
end
else
HideAllBox.Checked:=false;
end
else //Если значение "NoDesktop" не существует в ключе Explorer,
begin//тогда создадим его и установим значение
IsExist.WriteInteger("NoDesktop",00000000);
HideAllBox.Checked:=false;
end;
end;
except
MessageDlg("Ошибка при просмотре или создании ветви реестра",mtError,[mbOK],0);
end;

IsExist.CloseKey;
IsExist.Free;


Skier   (2002-08-14 16:38:00) [14]

>Lexa18
Код в студию...


Lexa18   (2002-08-14 16:35:00) [15]

Ничего подобного, компилятор выдаёт ошибку, что нельзя прочесть значение, хотя оно существует и при команде определения типа данных вадаёт Integer. Вот не читает значение, и всё тут.


Виктор Щербаков   (2002-08-14 12:56:00) [16]

TRegistry.ReadInteger


Наверх

Титульная страница Поиск, карта сайта Написать письмо