Announcement

Collapse
No announcement yet.

Hilfe: Lokale Windows-Registrierung geht nicht

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hilfe: Lokale Windows-Registrierung geht nicht

    BCB 3.0 / C++5.1
    Win95/NT

    Ich habe eine Anwendung geschrieben, bei der ich in der Windows-Registrierung (regedit) einen Schlüssel lese und schreibe. Der Schlüssel liegt unter
    HKEY_LOCAL_MACHINE -> Software auf dem lokalen Rechner

    Die Abfrage habe ich über die Win-API-Funktionen:

    RegConnectRegistry(NULL, HKEY_LOCAL_MACHINE, &mainkey);
    RegOpenKeyEx(mainkey, "SOFTWARE\\CTK\\Test", 0, KEY_ALL_ACCESS, &subkey);
    RegQueryValueEx(subkey, "Parameter", NULL, &type, result, &len);
    RegCloseKey(subkey);
    RegCloseKey(mainkey);

    aber auch über die BCB-Funktionen:

    reg->RootKey = HKEY_LOCAL_MACHINE;
    reg->RegistryConnect(NULL);
    reg->OpenKey("SOFTWARE\\CTK\\Test", false);
    keyresult = reg->ReadString("Parameter");
    reg->CloseKey();

    versucht. Bei mir (NT und Win95) funktioniert alles bestens, ich habe aber nur ein Peer-to-Peer-Netzwerk und melde mich lokal an. Aber bei einem Kunde, der sich an einer Domäne anmeldet, kann der Schlüssel nicht gelesen werden, obwohl ich mit RegistryConnect und NULL auf den lokalen Rechner zugreife.

    Ich hab' echt keinen Schimmer, was ich falsch mache und steh mächtig auf'm Schlauch...

    Kann mir wer helfen???

    Danke schon mal...

    Martin

  • #2
    Das Problem liegt vermutlich in dem Modus in dem du diesen
    Schlüssel öffnen willst(KEY_ALL_ACCESS). Die Borland-Komponente
    bei BCB 3 verwendet übrigens immer diesen Wert und man kann ihn auch
    nicht überschreiben.
    Bei NT bin ich mir sicher, daß ein Standartbenutzer unter "HKEY_LOCAL_MACHINE" nicht mit dieser Berechtigung zugreifen
    können

    Comment


    • #3
      Das Problem liegt vermutlich in dem Modus in dem du diesen Schlüssel öffnen willst(KEY_ALL_ACCESS).

      Die Borland-Komponente bei BCB 3 verwendet übrigens immer diesen Wert und man kann ihn auch nicht überschreiben.

      Bei NT bin ich mir sicher, daß Standartbenutzer unter "HKEY_LOCAL_MACHINE" nicht mit dieser Berechtigung zugreifen können

      Comment

      Working...
      X