static void Main(string[] args) { log4net.Config.XmlConfigurator.Configure(); // Startup m_log.Info(Name); m_log.Info(new string('-', Name.Length)); // Read settings Settings.LoadConfig(ConfigFile); // Command line arguments override settings Settings.ParseCommandArguments(args); // Start GUI module StartGUIModule(); // Start the processes ThreadPool.QueueUserWorkItem(startProcesses); // Hand over thread control to whatever GUI module GUIModule.StartGUI(); // GUI module returned, we are done Shutdown(); }