![]() |
OpenKeyReadOnly in Windows VISTA 64Bit
Hallo zusammen,
ich habe ein Problem, um Werte mit OpenKeyReadOnly auf einem 64Bit System laut dieser ![]()
Delphi-Quellcode:
Hier werden jetzt die richtigen Werte angezeigt und ausgelesen. FAccess wird durch die Function GetRegAccessMode aus der Anleitung ermittelt. Ersetze ich nun die Zeile 4 durch diese hier :
regKey := 'SOFTWARE\Microsoft\Windows NT\CurrentVersion';
reg := TRegistry.Create(FAccess); Reg.RootKey:= HKEY_LOCAL_MACHINE; If Reg.OpenKey(regKey, false) Then Begin Result.RegAnwender := Reg.ReadString( 'RegisteredOwner' ); Result.RegFirma := Reg.ReadString( 'RegisteredOrganization' ); Result.ProduktID := Reg.ReadString( 'ProductId' ); If reg.ValueExists( 'CSDVersion') Then Result.Version:= Result.Version + ' (' + reg.ReadString( 'CSDVersion' ) + ')'; If reg.ValueExists( 'ProductKey') Then Result.SerialNum:= reg.ReadString( 'ProductKey' ) Else Result.SerialNum:= ''; End;
Delphi-Quellcode:
Dann greift er auf den 64Bit-Teil in der Registry zu, was ich nicht ganz nachvollziehen kann. Warum ist das so ? :gruebel:
If Reg.OpenKeyReadOnly(regKey) Then
|
Re: OpenKeyReadOnly in Windows VISTA 64Bit
Ich hab grad das gleiche Problem.^^
Hat jemand da ne Ahnung? |
Re: OpenKeyReadOnly in Windows VISTA 64Bit
Hallo Sebastian,
ich habe das jetzt über den Befehl ![]() |
Re: OpenKeyReadOnly in Windows VISTA 64Bit
Das schliesst dann aber die Verwendung von TRegistry aus, oder?
|
Re: OpenKeyReadOnly in Windows VISTA 64Bit
Jepp, korrekt. Zumindest für den nur lesen Zugriff.
|
Re: OpenKeyReadOnly in Windows VISTA 64Bit
Hrm. Leider sind die Sourcen die da aus der Registry lesen nicht von mir. :( Naja, immerhin kann ich das jetzt bei mir mal Patchen damit das wenigstens auf meiner Entwicklungsmaschine läuft.
|
Re: OpenKeyReadOnly in Windows VISTA 64Bit
Willst Du die Registry.pas patchen ?
|
Re: OpenKeyReadOnly in Windows VISTA 64Bit
Nein. Ich setze auf einer fremden Codebasis auf die eben TRegistry benutzt. Diese Codebasis kann ich kurz umpatchen dass sie eben bei mir an der einen Stelle selber liest. Damit läuft die Anwendung auf meinem Entwicklungsrechner und ich kann weiter entwickeln.
Da bisher kein Kunde x64 einsetzt ist das auch unkritisch, solange nicht ich das Release baue :) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:15 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz