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

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

работа с реестром? [D7, Win95/98, Win2k, WinXP]


xamlo ©   (2004-01-18 18:47:00) 

подскажите как правильно написать функцию, использующуую только API функйии, которая будет считывать значение ключа из реестра.

вот то что я написал, но оно выдает полный ноль:
//-----------------readkey.dpr-------
Program readkey;
uses windows,system;

function OpenKey(Key: String; var Handle: HKEY): Boolean;
begin
 Result := RegCreateKey(HKEY_LOCAL_MACHINE, PChar(Key), Handle) = ERROR_SUCCESS;
end;

function CloseKey(Handle: HKey): Boolean;
begin
 Result := RegCloseKey(Handle) = ERROR_SUCCESS;
end;

function readkeyval(s:string):string;
const key='SOFTWARE\Microsoft\Windows\CurrentVersion';
var    Buffer: array[0..29] of Byte;
       DataType, BufSize: Integer;
       Handle: HKey;
begin
   BufSize := SizeOf(Buffer);
   if openkey(key,Handle) then
   if RegQueryValueEx(Handle, PChar(s), nil, @DataType, @Buffer, @BufSize) = ERROR_SUCCESS then begin
  CloseKey(Handle);
  end;
  result:=string(PChar(@Buffer));
end;

//сама программа
begin
messagebox(0,PChar(readkeyval('ProductId')),'ProductId',0);
end;
//---------конец проги-------
попробуйте это откомпелировать у себя, может у вас будет не ноль(значение).
подскажите как и что исправить чтобы работало.


xamlo   (2004-01-20 00:45:00) [1]

Ну да пробовал, мне он ничего такого не писал, Ну ладно спасибо и на этом, проверю, может и заработает, а может и нет


Cobalt   (2004-01-19 23:29:00) [2]

1) CУЩЕСТВУЕТ ЛИ ЭТОТ КЛЮЧ?
2)   RegCreateKey This function is provided for compatibility with Windows version 3.1. Win32-based applications should use the RegCreateKeyEx function.
3) Пробовал ли ТЫ отладить свой код ?


xamlo   (2004-01-18 23:04:00) [3]

Примерно это и сделано, я не прошу мне говорить что почитать, а сказать почему это не работает, и что надо сделать чтобы работало.


Плохиш_   (2004-01-18 22:59:00) [4]

Берёшь исходники TRegistry и изучаешь


xamlo   (2004-01-18 22:06:00) [5]

Ответьте пожалуйста!!!!


Наверх

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