static void Main(string[] args)
{
bool runAsDaemon;
Guid targetPowerSchemeGuid;
if (!TryParseArgs(args, out runAsDaemon, out targetPowerSchemeGuid))
{
runAsDaemon = Properties.Settings.Default.RUN_AS_DAEMON;
targetPowerSchemeGuid = Properties.Settings.Default.DEFAULT_POWER_SCHEME_GUID;
}
var repository = new Domain.PowerSchemeRepository();
var targetPowerScheme = repository.FindById(targetPowerSchemeGuid);
if (targetPowerScheme != null)
{
var currentPowerScheme = repository.GetActive();
if (!currentPowerScheme.Equals(targetPowerScheme))
{
repository.SetActive(targetPowerScheme);
}
if (!runAsDaemon)
{
// Done!
return;
}
}
// Were not able to simply set the active scheme or are running as daemon
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new ShowAvailableSchemes(runAsDaemon, targetPowerScheme));
}