Hi,
Ich habe eine Funktio, die mir aus einem Pfad in der Registry einen String / Integer auslliest. Nun muss ich aus der Windows Registry einen "REG_DWORD"-Wert auslesen, dieser scheint ein Binärer/Hexadezimaler Wert zu sein, ich brauche ihn aber als Integer, verständlich *g*
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| function MyRegIntR(vRegbaum:Cardinal;vPfad,vName:string):integer; var Reg: TRegistry; begin Reg := TRegistry.Create; try Reg.RootKey := vRegBaum; if Reg.OpenKey(vPfad, True) then begin Result:=Reg.ReadInteger(vName); Reg.CloseKey; end; finally Reg.Free; end; end; |
Diese Funktion liest Integer aus, besitze aber noch fast die gleich die mir eben Strings ausliest.
Wie kann ich nun diesen Datentyp umwandeln?
In meinem Fall:
MyRegIntR(HKEY_CURRENT_USER,'Software\Microsoft\Command Processor','DefaultColor')
bekomme ich den Wert/Integer 112 zurück, aber der Wert ist eiggentlich 70, Standardmäßig sollte dieser Wert in der Win-Registry auf 0 oder so stehen.
Ich hoffe ich hab mein Problem deutlich geschilder und ihr könnt mir helfen.
Moderiert von
Peter Lustig: Code- durch Delphi-Tags ersetzt