(Co-Admin)
Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
Delphi 11 Alexandria
|
10. Jun 2002, 16:50
Moin Chewie,
da hast Du aber Glück, dass ich gerade an einem Reg Editor arbeite
Code:
function RegDataToString(const p_dwRegDataType : DWord;const p_pValueData : Pointer;const p_dwDataLen : DWord) : string;
var
pRegBinary : PByte;
pRegDWord : PDWord;
pRegString : PChar;
pRegQWord : PInt64;
i : DWord;
begin
Result := '';
case p_dwRegDataType of
REG_BINARY,
REG_MULTI_SZ,
REG_NONE,
REG_LINK,
REG_RESOURCE_LIST,
REG_FULL_RESOURCE_DESCRIPTOR,
REG_RESOURCE_REQUIREMENTS_LIST :
begin
pRegBinary := p_pValueData;
for i := 1 to p_dwDataLen do
begin
Result := Result + IntToHex(pRegBinary^,2)+#32;
inc(pRegBinary);
end;
Result := trim(Result);
end;
REG_DWORD :
begin
pRegDWord := p_pValueData;
Result := IntToHex(pRegDWord^,8) + ' ('+IntToStr(pRegDWord^)+'/'+IntToStr(integer(pRegDWord^))+')';
end;
REG_DWORD_BIG_ENDIAN :
begin
pRegBinary := p_pValueData;
for i := 1 to 4 do
begin
Result := Result + IntToHex(pRegBinary^,2);
inc(pRegBinary);
end;
end;
REG_EXPAND_SZ,
REG_SZ :
begin
pRegString := p_pValueData;
Result := pRegString;
end;
REG_QWORD :
begin
pRegQWord := p_pValueData;
Result := IntToHex(pRegQWord^,16) + ' ('+IntToStr(pRegQWord^)+')';
end;
end;
end;
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
|
|
Zitat
|