using System; using Registry = Microsoft.Win32.Registry; using Path = System.IO.Path; namespace Cosmos.Build.Common { public static class CosmosPaths { public static readonly string CosmosKit; public static readonly string Build; public static readonly string BuildVsip; public static readonly string IL2CPUTask; public static readonly string Kernel; public static readonly string GDBClientExe; public static readonly string DBGClientExe; static CosmosPaths() { using (var xReg = Registry.LocalMachine.OpenSubKey("Software\\Cosmos", false)) { if(xReg == null) throw new Exception("The Key \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Cosmos\" does not exist! Are you install Cosmos Kit?"); CosmosKit = (string)xReg.GetValue(null); } Build = Path.Combine(CosmosKit, "Build"); BuildVsip = Path.Combine(CosmosKit, "Build\\VSIP"); IL2CPUTask = Path.Combine(CosmosKit, "Build\\VSIP\\Cosmos.Build.IL2CPUTask.exe"); Kernel = Path.Combine(CosmosKit, "Kernel"); GDBClientExe = Path.Combine(CosmosKit, "Build\\VSIP\\Cosmos.Debug.GDB.exe"); DBGClientExe = Path.Combine(CosmosKit, "Build\\VSIP\\Cosmos.VS.Debug.exe"); } } }