Commit 08e6a749 authored by jan.koester's avatar jan.koester
Browse files

inital support regedit

parent e51017b0
Loading
Loading
Loading
Loading
+13 −5
Original line number Diff line number Diff line
@@ -119,15 +119,22 @@ namespace confplus {
            
            if (lRes == ERROR_SUCCESS) {
                std::string valueNameStr = std::string(valueNameBuffer.get());
                
                // Pfad-Bildung: Standardwert (leerer Name) wird dem Sektions-Key zugewiesen
                std::string cname = currentConfigPath; 
                std::string cvalue;

                // 1. Normalisierung der Groß-/Kleinschreibung (Case-Insensitivity)
                std::transform(valueNameStr.begin(), valueNameStr.end(), valueNameStr.begin(),
                               [](unsigned char c){ return std::toupper(c); });
                
                if (!valueNameStr.empty()) {
                    // Benannter Wert: wird ein Kind-Knoten unterhalb des Pfades
                    cname += "/" + valueNameStr;
                } else {
                    // 2. KORREKTUR des Standardwerts: Expliziter Name, um den "path not key"-Fehler zu umgehen.
                    cname += "/@default"; 
                }
                
                std::string cvalue;

                // --- Wertkonvertierung ---
                if (dwType == REG_SZ) {
                    cvalue = std::string(dataBuffer.get());
                } else if (dwType == REG_DWORD) {
@@ -139,6 +146,7 @@ namespace confplus {
                        continue;
                    }
                } else {
                    // Ignoriere alle anderen Registry-Typen
                    continue;
                }