Commit 7c20a251 authored by jan.koester's avatar jan.koester
Browse files

inital support regedit

parent d29d7346
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -192,20 +192,20 @@ namespace confplus {
        return "Jan Koester";
    }
    
    void Registry::saveKeyRecursive(HKEY hRootKey, std::string currentPath, Config::ConfigData* currentData, const Config *conf) {
    void Registry::saveKeyRecursive(HKEY hRootKey, std::string currentPath,const Config::ConfigData* currentData, const Config *conf) {
        // ... (Die saveKeyRecursive Logik bleibt unverändert, da sie korrekt den globalen REGISTRY_ROOT_KEY verwendet)
        for (Config::ConfigData* key = currentData; key != nullptr; key = key->nextData.get()) {
        for (const Config::ConfigData* key = currentData; key != nullptr; key = key->next()) {
            
            std::string localKeyName = key->Key;
            std::string localKeyName = key->getKey();
            
            if (localKeyName.empty() && !key->haveChild) {
            if (localKeyName.empty() && !key->childs()) {
                continue;
            }

            std::string subKeyPath = currentPath;
            std::string valueName = localKeyName;
            
            if (key->haveChild) {
            if (key->childs()) {
                if (!subKeyPath.empty()) {
                    subKeyPath += "\\";
                }
@@ -262,18 +262,18 @@ namespace confplus {
                    }
                }

                if (!key->haveChild) {
                if (!key->childs()) {
                    RegCloseKey(hSubKey);
                }
            } else {
                std::cerr << "Failed to create subkey: " << subKeyPath << std::endl;
            }
            
            if (key->haveChild && key->Child) { 
            if (key->childs()) { 
                std::string nextPath = subKeyPath;
                
                if (lRes == ERROR_SUCCESS) {
                    saveKeyRecursive(hRootKey, nextPath, key->Child.get(), conf);
                    saveKeyRecursive(hRootKey, nextPath, key->getChild(), conf);
                    RegCloseKey(hSubKey);
                }
            }