KEIN ZUGRIFF AUF HKEY_LOCAL_MACHINE ?????
-
hi,
ich hab ne key in local machine stehen und dennselben zum test in current user. bei current user geht alles wunderbar aber auf local machine funtzt es nicht ??? er sagt er bei key exists das es ihn nicht gibt und openkey mag er auchnicht ? woran um alles in der welt kann das denn liegen ???????
danke
-
An deiner Rechtschreibung ! Zeig doch mal den Quelltext
-
dAnkä
post denn source gleich wenn ich im office bin,
sagmal es kann ja nicht sein das ich bei eintragungen in local machine einen neustart brauche damit die software diesen key auslesen kann ?
ich möchte eine einstellung für alle user auf dem pc vornehmen und ich dachte das mach ich am besten in hkey_local_machine->SOFTWARE->FIRMENNAME->PRODUKTNAME key1, key2 ... hab die nun zum test mit der hand angelegt aber kann sie nicht auslesen. andere keys aus local machine lassen sich lesen ...wie gesagt der knackpunkt ist nicht der zugriff sondern warum ich auf meinen eigenen erzeugten key nicht zugreifen kann oder brauche ich da wirklich einen neustart ???
-
Hallo,
hatte auch mal so ein Problem.
Bei mir lag es an der Rechtevergabe des Benutzers
der hatte nur schreibzugriff auf Current_User
Local_Machine war nur lesen, damals wollte halt unser
Netzadmin damit verhintern, das nicht jeder Software auf seinen Rechner installieren kann.Du kannst ja mal austesten ob du per Hand mit Regedit den Schlüssel
in Local_Machine erstellen kannst, falls nicht haste das selbe Prob :p :pmfg
VergissEs
-
nein, eintragen geht von hand,
auslesen geht allerdings nicht!!!
beispiel1 (funktioniert nicht):
AnsiString KeyName, S; TRegistry *Registry = new TRegistry(KEY_READ); try { // Dieser eintrag funtkioniert !!! // KeyName = "Hardware\\DESCRIPTION\\System\\CentralProcessor\\0"; // dieser eintrag funktioniert nicht obwohl key existiert KeyName = "SOFTWARE\\MySoft\\Produkt\\"; Registry->RootKey = HKEY_LOCAL_MACHINE; vorhanden ist. Registry->OpenKey(KeyName,false); S = Registry->ReadString("DB"); ShowMessage(S); } __finally { delete Registry; }
-
Hallo,
also dein Code geht bei mir
habe unter
HKEY_LOCAL_MACHINE\SOFTWARE\MySoft\Produkt
einen String "DB" erstellt mit den Inhalt "Test"der wird dann in der ShowMessage angezeigt
mfg
VergissEs
-
Unter BCB6 zu mindest gibt es 'ne Möglichkeit Schlüßel mit OpenKeyReadOnly() zu öffnen. vielleicht hilft das.
ansonsten bleibt noch der Weg über WinApi mit RegOpenKeyEx() und Co.