public void AddSubKeys(string path) { subKeys = RegHelper.GetSubKeys(path); foreach (string sub in subKeys) { subKeys.Add(sub); } }
public RegHive(string regPath, subKey sk = null) { hivePath = regPath; if (null != sk) { sbkey = sk; } subKeys = RegHelper.GetSubKeys(regPath); int cnt = 0; foreach (string sub in subKeys) { string fullpath = hivePath + "\\" + sub; if (cnt % 500 == 0) { Controller.UpdateProgress("Reading (" + cnt + ") " + fullpath, false); //If closing if (Controller.shouldAbort) { return; } } cnt++; RegKey rk = new RegKey(fullpath, ""); regKeys.Add(rk); if (sk != null) { string fullpath2 = fullpath + "\\" + sk.subPath; string result = RegHelper.GetValueForProperty(fullpath2, sk.property); if (!string.IsNullOrEmpty(result)) { if (propertyMap.ContainsKey(result)) { propertyMap[result].Add(fullpath); } else { propertyMap.Add(result, new List <string> { fullpath }); } } } //if sk not null } } //ctor