ecfisa,
Excelente código
Quizás esta variante mejore un poco el tiempo:
Código Delphi
[-]
for i := 0 to SValues.count - 1 do
if SValues[i] = aValueName then
begin
RegDataType := GetDataType(SValues[i]);
case RegDataType of
rdUnknown : st := 'Desconocido';
rdInteger : st := IntToStr(ReadInteger(SValues[i]));
rdString , rdExpandString : st := ReadString(SValues[i]);
rdBinary : begin
size:= GetDataSize(SValues[i]);
SetLength(st, size);
ReadBinaryData(SValues[i], PChar(st)^, size);
end;
end;
StResult.Add(aKeyName + '\' + SValues[i] + ' = ' + st)
end;
Sin embargo me queda la duda de como un programa como
O&O RegEditor hace las búsquedas de forma tan rápida en el Registro de Windows.
Espero sea útil
Nelson.