![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Прошу помощи по RegEnumValue [D5, XP]
DesperadO666 © (2006-05-29 10:32:00)Нужно прочесть наименования ключей определенной ветки
Подскажите, что не так делаю....
var
key : HKEY;
index : word;
DataType,DataSize,ValueNameSize :DWORD;
Data,ValueName : pchar;
ErrParam : Integer;
if RegOpenKey (HKEY_LOCAL_MACHINE,'HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\AUTOTUNE9.2.0',key)= ERROR_SUCCESS then
begin
index:=0;
DataSize:=SizeOf(Data);
ValueNameSize:=SizeOf(ValueName);
ErrParam:=RegEnumValue (key,index,ValueName,@ValueNameSize,null,null,null,null);
end;
Вылезает ошибка
Types of actual and formal var parameters must be identical
DesperadO666 (2006-05-29 11:29:00) [1]Переписал так.
var
key : HKEY;
ValueNameSize :DWORD;
ValueName : array [0..255] of char;
ErrParam : Integer;
if RegOpenKey(HKEY_LOCAL_MACHINE,'\HKEY_LOCAL_MACHINE\SOFTWARE\HiKPI\REUR\USERS',ke y)= ERROR_SUCCESS then
begin
ValueNameSize:=SizeOf(ValueName);
ErrParam:=RegEnumValue(key,0,ValueName,@ValueNameSize,nil,nil,nil,nil);
end;
Курсор ставновится возле первого nil с той же ошибкой :(
tesseract (2006-05-29 10:54:00) [2]У тебя несовпадение размерности. index -Cardinal, valueNameSize - тоже.
и вроде должно быть не null, а nil.
SizeOf(pcharvalue) - вернёт размер pointer - 4 байта.
Length(pcharvalue) - вернёт что надо.
см help по этому.