Hallo Delphianer,
meine Frage richtet sich auf das im Threadnamen stehende Thema.
Ich versuchte erfolglos die Binary Werte des Registry Eintrags 'DigitalProductId' bzw. 'DigitalProductId64'
durch folgenden Code auszulesen:
Delphi-Quellcode:
function GetWindowsRegistryValuesA: string;
var
Reg: TRegistry;
i: Integer;
begin
Reg := TRegistry.Create(KEY_READ);
try
Reg.RootKey := HKEY_LOCAL_MACHINE;
if (Reg.OpenKeyReadOnly('SOFTWARE\Microsoft\Windows NT\CurrentVersion\')) then
begin
try
{ Bemerkung: Ich überprüfe mit ValueExists die Existenz der Werte.
Mit KeyExists hab ichs auch versucht.
Es klappt eigentlich bei jedem Wert, nur nicht bei
den zwei besagten.
}
{ Beispiel Code einer Erfolgreichen Operation: }
// Check and Read BuildGUID
if Reg.ValueExists('BuildGUID') then
Result := Result + #13#10 + 'BuildGUID: ' + Reg.ReadString('BuildGUID');
{ Die nächsten 2 Operationen geben nichts zurück, sprich Result
wird nicht erweitert.
}
// Check and Read DigitalProductId
if Reg.ValueExists('DigitalProductId') then
Result := Result + 'existiert';
// Check and Read DigitalProductId4
if Reg.ValueExists('DigitalProductId64') then
Result := Result + 'existiert';
// usw.
finally
Reg.CloseKey;
end;
end;
finally
Reg.Free;
end;
end;
Hoffe ihr könnt mir helfen,
Mfg DArc