void WorkerThreadFunc() { try { /*AlarmsFile file = new AlarmsFile(); * file.FileName = (string)ParentalControlsRegistry.GetValue("AlarmFile"); * file.Add(new Alarm("Std", new Time(16, 15), DayOfWeek.Sunday, true)); * file.Save();*/ while (!_shutdownEvent.WaitOne(0)) { decimal uptime = GetUptime(); //alle 5 Minuten (1/60*5*100 = 83) if (uptime > 0 && Convert.ToInt32(uptime * 100) % 83 == 0) { Utils.log.Debug("Restzeit Heute: " + Utils.RestZeit(Utils.Span.Day, uptime)); Utils.log.Debug("Restzeit Woche: " + Utils.RestZeit(Utils.Span.Week, uptime)); if (!Utils.IsWeekDay()) { Utils.log.Debug("Restzeit Wochenende: " + Utils.RestZeit(Utils.Span.WeekEnd, uptime)); } } string data = ""; callback.ExchangeData(data); Utils.log.Debug("Aktives Fenster: " + m_ActiveWndTitle); if (!Utils.BeforeSchoolDay() && DateTime.Now >= DateTime.Parse(DateTime.Now.ToString("dd.MM.yyyy ") + Properties.Settings.Default.FeierabendWochenEnde)) { shutdown("After " + Properties.Settings.Default.FeierabendWochenEnde); return; } else if (Utils.BeforeSchoolDay() && DateTime.Now >= DateTime.Parse(DateTime.Now.ToString("dd.MM.yyyy ") + Properties.Settings.Default.FeierabendWochenTag)) { shutdown("After " + Properties.Settings.Default.FeierabendWochenTag); return; } if (Utils.IsWeekDay() && Convert.ToDecimal(ParentalControlsRegistry.GetValue("DaySum")) + uptime > Convert.ToDecimal(ParentalControlsRegistry.GetValue("DayQuota"))) { shutdown("DaySum > " + ParentalControlsRegistry.GetValue("DayQuota")); return; } else if (!Utils.IsWeekDay() && Convert.ToDecimal(ParentalControlsRegistry.GetValue("WeekEndQuota", "-1")) > 0 && Convert.ToDecimal(ParentalControlsRegistry.GetValue("WeekEndSum")) + uptime > Convert.ToDecimal(ParentalControlsRegistry.GetValue("WeekEndQuota"))) { shutdown("WeekEndSum > " + ParentalControlsRegistry.GetValue("WeekEndQuota")); return; } else if (Convert.ToDecimal(ParentalControlsRegistry.GetValue("WeekSum")) + uptime > Convert.ToDecimal(ParentalControlsRegistry.GetValue("WeekQuota"))) { shutdown("WeekSum > " + ParentalControlsRegistry.GetValue("WeekQuota")); return; } /*if (file.IsValidForSaving()) * { * foreach (Alarm alarm in file.Alarms) * { * if (alarm.RepeatDays.HasFlag(Utils.GetCurrentDay()) && IsTimeToAlarm(alarm)) * { * if (ShowBlocker()) * { * Time a = GetCurrentTime(); * Console.WriteLine("The Alarm Blocker showed at {0}:{1} {2}.", a.Hour, a.Minutes, (a.Hour > 12 ? "PM" : "AM")); * } * } * } * }*/ Thread.Sleep(waitTime); } } catch (Exception e) { Utils.log.Debug(e.Message); } }