Thema: Delphi Windows 7 Product Key

Einzelnen Beitrag anzeigen

DArc

Registriert seit: 3. Jun 2009
48 Beiträge
 
Delphi 7 Enterprise
 
#1

Windows 7 Product Key

  Alt 30. Dez 2011, 19:01
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
Ich würde gerne die Welt verändern, doch Gott hat
vergessen mir die Quellcodes zu geben ... !
  Mit Zitat antworten Zitat