AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Registry-Schlüssel unter 64 Bit Windows nicht auslesbar?
Thema durchsuchen
Ansicht
Themen-Optionen

Registry-Schlüssel unter 64 Bit Windows nicht auslesbar?

Ein Thema von DevidEspenschied · begonnen am 18. Apr 2012 · letzter Beitrag vom 18. Apr 2012
Antwort Antwort
DevidEspenschied

Registriert seit: 7. Sep 2006
Ort: Berlin
439 Beiträge
 
Delphi 12 Athens
 
#1

Registry-Schlüssel unter 64 Bit Windows nicht auslesbar?

  Alt 18. Apr 2012, 12:38
Ich habe eine Anwendung mit Admin-Rechten und möchte einen Registry-Stringschlüssel auslesen. Das funktioniert auch unter der 32 Bit-Version von Windows 7 mit folgendem Code ganz gut:

Delphi-Quellcode:
function GetWindowsGUID : string;
var CryptoGUID : TRegistry;
    MachineGUIDStr : string;
begin
  Result:='';
  CryptoGUID:=TRegistry.Create;
  try
    CryptoGUID.RootKey:=HKEY_LOCAL_MACHINE;
    CryptoGUID.Access :=KEY_READ;
    if CryptoGUID.OpenKeyReadOnly('Software\Microsoft\Cryptography') then
    begin
      MachineGUIDStr:=CryptoGUID.ReadString('MachineGuid');
      Result:=Uppercase(MachineGUIDStr);
    end;
  finylly
    CryptoGUID.Free;
  end;
end;
Bei einer 64 Bit-Version von Windows 7 kommt ein Leerstring zurück, und die Hilfe sagt auch, dass dies der Fall ist, wenn der Schlüssel nicht existiert. In Regedit sehe ich aber, dass er existiert. Woran kann das liegen?
Devid
Devid Espenschied
Pre-sales Consultant
Embarcadero Germany GmbH
germany.info@embarcadero.com

Kein Support per PN
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.195 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Registry-Schlüssel unter 64 Bit Windows nicht auslesbar?

  Alt 18. Apr 2012, 12:41
Du musst das zugriffsflag KEY_WOW64_64KEY mit übergeben sonst sieht deine 32-Bit Anwendung den für sieh bestimmten 32-Bit Zweig.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
DevidEspenschied

Registriert seit: 7. Sep 2006
Ort: Berlin
439 Beiträge
 
Delphi 12 Athens
 
#3

AW: Registry-Schlüssel unter 64 Bit Windows nicht auslesbar?

  Alt 18. Apr 2012, 12:45
Danke, das war die Lösung.
Devid
Devid Espenschied
Pre-sales Consultant
Embarcadero Germany GmbH
germany.info@embarcadero.com

Kein Support per PN
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz