protected static void Load() { ArrayList list = new ArrayList(); XmlRegistryKey rk = Helper.WindowsRegistry.RegistryKey.CreateSubKey("ExtTools"); string[] names = rk.GetSubKeyNames(); foreach (string name in names) { string rname = ToolLoaderItemExt.SplitName(name); XmlRegistryKey srk = rk.CreateSubKey(name); ToolLoaderItemExt tli = new ToolLoaderItemExt(rname); tli.Type = Convert.ToUInt32(srk.GetValue("type")); //tli.Name = Convert.ToString(srk.GetValue("name")); tli.FileName = Convert.ToString(srk.GetValue("filename")); tli.Attributes = Convert.ToString(srk.GetValue("attributes")); list.Add(tli); } items = new ToolLoaderItemExt[list.Count]; list.CopyTo(items); }
/// <summary> /// Write a SubKey /// </summary> /// <param name="sw"></param> /// <param name="key"></param> void WriteKey(System.IO.StreamWriter sw, XmlRegistryKey key) { if (key != root) { sw.WriteLine("<key name=\"" + key.Name + "\">"); } string[] keys = key.GetSubKeyNames(); foreach (string s in keys) { WriteKey(sw, key.OpenSubKey(s, false)); } string[] values = key.GetValueNames(); foreach (string s in values) { WriteValue(sw, s, key.GetValue(s)); } if (key != root) { sw.WriteLine("</key>"); } }
void Load() { censorfiles.Add(System.IO.Path.Combine(SimSavegameFolder, @"Downloads\quaxi_nl_censor_v1.package")); censorfiles.Add(System.IO.Path.Combine(SimSavegameFolder, @"Downloads\quaxi_nl_censor.package")); string[] names = xrk.GetSubKeyNames(); int ver = -1; avlgrp = 0; System.Diagnostics.Debug.WriteLine("\r\n----\r\nExpansionItems"); foreach (string name in names) { ExpansionItem i = new ExpansionItem(xrk.OpenSubKey(name, false)); exps.Add(i); map[i.Expansion] = i; if (i.Flag.Class == ExpansionItem.Classes.Story) { continue; } if (i.CensorFile != "") { string fl = System.IO.Path.Combine(SimSavegameFolder, @"Downloads\" + i.CensorFileName); if (!censorfiles.Contains(fl)) { censorfiles.Add(fl); } fl = System.IO.Path.Combine(SimSavegameFolder, @"Config\" + i.CensorFileName); if (!censorfiles.Contains(fl)) { censorfiles.Add(fl); } } if (i.Version > ver) { ver = i.Version; lastknown = i.Expansion; } avlgrp = avlgrp | (uint)i.Group; } System.Diagnostics.Debug.WriteLine("----\r\n"); spver = GetMaxVersion(ExpansionItem.Classes.StuffPack); epver = GetMaxVersion(ExpansionItem.Classes.ExpansionPack); stver = GetMaxVersion(ExpansionItem.Classes.Story); latest = this.GetLatestExpansion(); exps.Sort(); CreateSaveGameMap(); paths = new List <string>(); foreach (ExpansionItem ei in exps) { if (ei.Exists) { if (System.IO.Directory.Exists(ei.InstallFolder)) { paths.Add(ei.InstallFolder); } } } }