Auslesen der Registry klappt nicht :(



  • hallo Leute!

    Ich möchte in meinem Projekt die Registry auslesen. Einen entsprechenden Eintrag habe ich bei der installation gemacht. Der eintrag steht dort:

    HKEY_LOCAL_MACHINE - Software - Microsoft - Windows - Uninstall - meinProgramm

    Der key heißt "Inno Setup CodeFile: nameDesKeys" und hat den Wert den ich in der installation angegeben habe.

    Den Key habe ich mit folgendem Befehl gesetzt:

    [Registry]
    Root: HKCU; Subkey: "Software\SdexClient"; Flags: uninsdeletekeyifempty
    Root: HKCU; Subkey: "Software\SdexClient"; Flags: uninsdeletekey
    Root: HKCU; Subkey: "Software\SdexClient"; ValueType: string; ValueName: "SdexUserName"; ValueData: "name"

    SetPreviousData(PreviousDataKey, 'SdexUserName', name);

    soweit so gut. Wenn ich den key jetzt auslesen will mit:

    DWORD dwData = 256;
    		BYTE cDaten[256] = "";
    		HKEY hKey;
    
    		RegQueryValueEx(hKey,"SdexUserName",0,0,cDaten,&dwData);
    

    ...bekomme ich statt des Werts den der Key hat nur zahlen raus.

    Weiß jemand warum das so ist, bzw. was ich falsch gemacht hagbe?? Keine Ahnung übrigens warum der key dort steht wo er steht und wo er sein sollte!! 😕 😕

    danke schonmal l00P



  • hkey zeigt ins Nirvana!



  • Das ist übrigens WinAPI.
    Verschoben! ➡

    P.S.: In der WinAPI-FAQ gibts nen Beitrag über die Registry!



  • ...warum ist das winapi?? Ich hab eigentlich ein mfc Projekt. Gibts da noch eine andere Möglichkeit?? Die Zeilen hab ich aus der faq...

    lg
    l00P



  • Tja, das sind nun mal eben WinAPI-Funktionen! Und ist ja schön, dass du das aus der FAQ hast, es fehlt trotzdem die Initialisierung von hkey! mit der MFC würde man CRegKey verwenden. Siehe Registrybeitrag in der MFC-FAQ!



  • Probiers doch mal mit RegOpenKey,damit du nen HKEY kriegst


Anmelden zum Antworten