public static MessageBoxResult getConfirmMsgResult(PowerOptions mode) { string msg = String.Empty; string title = Resources.strWarningTitle; if (mode == PowerOptions.SHUTDOWN) { msg = Resources.strConfirmShutdown; } else if (mode == PowerOptions.REBOOT) { msg = Resources.strConfirmReboot; } else if (mode == PowerOptions.LOGOFF) { msg = Resources.strConfirmLogoff; } else if (mode == PowerOptions.LOCK) { msg = Resources.strConfirmLock; } else if (mode == PowerOptions.SLEEP) { msg = Resources.strConfirmSleep; } else if (mode == PowerOptions.HIBERNATE) { msg = Resources.strConfirmHibernate; } return(MessageBox.Show(msg, title, MessageBoxButton.YesNo, MessageBoxImage.Question)); }
internal void SetPowerOptions(PowerOptions powerOptions) { PowerOptions = powerOptions; if (PowerOptions.PowerOptionList != null && PowerOptions.PowerOptionList.Count > 0) { CallPowerOptions(); } }
protected void powerManagement(PowerOptions option) { bool ok; TokPriv1Luid tp; IntPtr hproc = GetCurrentProcess(); IntPtr htok = IntPtr.Zero; ok = OpenProcessToken(hproc, TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, ref htok); tp.Count = 1; tp.Luid = 0; tp.Attr = SE_PRIVILEGE_ENABLED; ok = LookupPrivilegeValue(null, SE_SHUTDOWN_NAME, ref tp.Luid); ok = AdjustTokenPrivileges(htok, false, ref tp, 0, IntPtr.Zero, IntPtr.Zero); if (mcWin32 == null) { initWMI(); } mcWin32.Scope.Options.EnablePrivileges = true; string classPath = String.Empty; ManagementBaseObject mboShutdownParams = null; if (Utils.IsWinVistaOrHigher()) // if (Utils.isNT6OrAbove(getOSInfo(OSInfo.Version))) { // See: http://msdn.microsoft.com/en-us/library/windows/desktop/aa394057(v=vs.85).aspx classPath = ShutdownClassPath.NT6; string comment = String.Empty; mboShutdownParams = mcWin32.GetMethodParameters(classPath); mboShutdownParams["Flags"] = ((int)option).ToString(); mboShutdownParams["ReasonCode"] = "0"; if (option == PowerOptions.REBOOT) { comment = Properties.Resources.strRebootComment; } else if (option == PowerOptions.SHUTDOWN) { comment = Properties.Resources.strShutdownComment; } mboShutdownParams["Comment"] = comment; mboShutdownParams["Timeout"] = cbxWaitTime.Text; } else { // See: http://msdn.microsoft.com/en-us/library/windows/desktop/aa394058(v=vs.85).aspx classPath = ShutdownClassPath.NT5; mboShutdownParams = mcWin32.GetMethodParameters(classPath); mboShutdownParams["Flags"] = ((int)option).ToString(); mboShutdownParams["Reserved"] = "0"; } foreach (ManagementObject manObj in mcWin32.GetInstances()) { mboShutdown = manObj.InvokeMethod(classPath, mboShutdownParams, null); } }
public override object VisitHsOptions(HSGrammarParser.HsOptionsContext context) { PowerOptions powerOptions = new PowerOptions(); powerOptions.Id = (int)VisitHsIdAssign(context.hsIdAssign()); foreach (var option in context.hsOption()) { powerOptions.Options.Add((PowerOption)VisitHsOption(option)); } return(powerOptions); }
protected void powerManagement(PowerOptions option) { if (mcWin32 == null) initWMI(); mcWin32.Scope.Options.EnablePrivileges = true; string classPath = String.Empty; ManagementBaseObject mboShutdownParams = null; if (Utils.IsWinVistaOrHigher()) // if (Utils.isNT6OrAbove(getOSInfo(OSInfo.Version))) { // See: http://msdn.microsoft.com/en-us/library/windows/desktop/aa394057(v=vs.85).aspx classPath = ShutdownClassPath.NT6; string comment = String.Empty; mboShutdownParams = mcWin32.GetMethodParameters(classPath); mboShutdownParams["Flags"] = ((int)option).ToString(); mboShutdownParams["ReasonCode"] = "0"; if (option == PowerOptions.REBOOT) comment = Properties.Resources.strRebootComment; else if (option == PowerOptions.SHUTDOWN) comment = Properties.Resources.strShutdownComment; mboShutdownParams["Comment"] = comment; mboShutdownParams["Timeout"] = cbxWaitTime.Text; } else { // See: http://msdn.microsoft.com/en-us/library/windows/desktop/aa394058(v=vs.85).aspx classPath = ShutdownClassPath.NT5; mboShutdownParams = mcWin32.GetMethodParameters(classPath); mboShutdownParams["Flags"] = ((int)option).ToString(); mboShutdownParams["Reserved"] = "0"; } foreach (ManagementObject manObj in mcWin32.GetInstances()) { mboShutdown = manObj.InvokeMethod(classPath, mboShutdownParams, null); } }
private void BtnHibernateClick(object sender, System.Windows.RoutedEventArgs e) { PowerOptions.Hibernate(); }
private void BtnRestartClick(object sender, System.Windows.RoutedEventArgs e) { PowerOptions.Restart(); }
private void BtnShutdownClick(object sender, System.Windows.RoutedEventArgs e) { PowerOptions.Shutdown(); }
public void Configure(IOptionsService optionsService) { Identifier ClockIdentifier = new Identifier("Vkm.DesktopDefaults.Clock"); Identifier VolumeIdentifier = new Identifier("Vkm.DesktopDefaults.Volume"); Identifier WeatherIdentifier = new Identifier("Vkm.DesktopDefaults.Weather"); Identifier MailIdentifier = new Identifier("Vkm.DesktopDefaults.Mail"); Identifier CalendarIdentifier = new Identifier("Vkm.DesktopDefaults.Calendar"); Identifier WeatherStationIdentifier = new Identifier("Vkm.DesktopDefaults.WeatherStation"); Identifier TaskbarIdentifier = new Identifier("Vkm.DesktopDefaults.Taskbar"); Identifier CalcIdentifier = new Identifier("Vkm.DesktopDefaults.Calc"); Identifier HeartbeatIdentifier = new Identifier("Vkm.DesktopDefaults.Heartbeat"); Identifier DateIdentifier = new Identifier("Vkm.DesktopDefaults.Date"); Identifier MediaIdentifier = new Identifier("Vkm.DesktopDefaults.Media"); Identifier PowerOffIdentifier = new Identifier("Vkm.DesktopDefaults.PowerOff"); Identifier AudioSelectIdentifier = new Identifier("Vkm.DesktopDefaults.AudioSelect"); Identifier AudioSessionsIdentifier = new Identifier("Vkm.DesktopDefaults.AudioSessions"); Identifier RemoteIdentifier = new Identifier("Vkm.DesktopDefaults.Remote"); Identifier DefaultCompositeLayout = new Identifier("Vkm.DefaultCompositeLayout.Desktop"); Identifier DefaultTimerLayout = new Identifier("Vkm.TimerLayout.Default"); Identifier DefaultApplicationChangeTransitionCalc = new Identifier("Vkm.DefaultApplicationChangeTransition.Calc"); Identifier DefaultApplicationChangeTransitionExcel = new Identifier("Vkm.DefaultApplicationChangeTransition.Excel"); Identifier DefaultApplicationChangeTransitionTotalCmd = new Identifier("Vkm.DefaultApplicationChangeTransition.TotalCmd"); Identifier DefaultIdleTransition = new Identifier("Vkm.DefaultIdleTransition"); Identifier DefaultStartupTransition = new Identifier("Vkm.DefaultStartupTransition"); Identifier DefaultNumpadLayout = new Identifier("Vkm.DefaultNumpad.Layout"); Identifier DefaultScreenSaverLayout = new Identifier("Vkm.DefaultScreensaver.Layout"); Identifier DefaultTaskbarLayout = new Identifier("Vkm.DefaultTaskbar.Layout"); Identifier DefaultLayoutSwitchLayout = new Identifier("Vkm.DefaultLayoutSwitch.Layout"); Identifier DefaultRemoteControlLayout = new Identifier("Vkm.DefaultRemoteControl.Layout"); GlobalOptions.Theme.BackgroundBitmapRepresentation = new BitmapRepresentation(Resources.BackgroundBitmap); GlobalOptions.LayoutLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(NumpadLayoutFactory.Identifier, DefaultNumpadLayout)); GlobalOptions.LayoutLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(ClockLayoutFactory.Identifier, DefaultScreenSaverLayout)); GlobalOptions.LayoutLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(CompositeLayoutFactory.Identifier, DefaultCompositeLayout)); GlobalOptions.LayoutLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(TimerLayoutFactory.Identifier, DefaultTimerLayout)); GlobalOptions.LayoutLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(TaskbarLayoutFactory.Identifier, DefaultTaskbarLayout)); GlobalOptions.LayoutLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(LayoutSwitchLayoutFactory.Identifier, DefaultLayoutSwitchLayout)); GlobalOptions.LayoutLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(RemoteControlLayoutFactory.Identifier, DefaultRemoteControlLayout)); GlobalOptions.TransitionLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(SimpleStartupTransitionFactory.Identifier, DefaultStartupTransition)); GlobalOptions.TransitionLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(SimpleIdleTransitionFactory.Identifier, DefaultIdleTransition)); GlobalOptions.TransitionLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(SimpleApplicationChangeTransitionFactory.Identifier, DefaultApplicationChangeTransitionCalc)); GlobalOptions.TransitionLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(SimpleApplicationChangeTransitionFactory.Identifier, DefaultApplicationChangeTransitionExcel)); GlobalOptions.TransitionLoadOptions.InitializationInfos.Add(new ModuleInitializationInfo(SimpleApplicationChangeTransitionFactory.Identifier, DefaultApplicationChangeTransitionTotalCmd)); optionsService.SetDefaultOptions(GlobalOptions.Identifier, GlobalOptions); var desktopOptions = new CompositeLayoutOptions(); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(0, 0), ModuleInfo = new ModuleInitializationInfo(ClockElementFactory.Identifier, ClockIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(4, 1), ModuleInfo = new ModuleInitializationInfo(RunElementFactory.Identifier, CalcIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(0, 1), ModuleInfo = new ModuleInitializationInfo(MediaElementFactory.Identifier, MediaIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(1, 1), ModuleInfo = new ModuleInitializationInfo(MailElementFactory.Identifier, MailIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(2, 1), ModuleInfo = new ModuleInitializationInfo(WeatherStationFactory.Identifier, WeatherStationIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(4, 0), ModuleInfo = new ModuleInitializationInfo(CalendarElementFactory.Identifier, CalendarIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(3, 1), ModuleInfo = new ModuleInitializationInfo(MoveToLayoutElementFactory.Identifier, TaskbarIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(1, 2), ModuleInfo = new ModuleInitializationInfo(MoveToLayoutElementFactory.Identifier, RemoteIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(2, 2), ModuleInfo = new ModuleInitializationInfo(WeatherElementFactory.Identifier, WeatherIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(3, 2), ModuleInfo = new ModuleInitializationInfo(HeartbeatFactory.Identifier, HeartbeatIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(3, 0), ModuleInfo = new ModuleInitializationInfo(DateElementFactory.Identifier, DateIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(0, 2), ModuleInfo = new ModuleInitializationInfo(PowerElementFactory.Identifier, PowerOffIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(7, 0), ModuleInfo = new ModuleInitializationInfo(VolumeElementFactory.Identifier, VolumeIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(7, 2), ModuleInfo = new ModuleInitializationInfo(AudioSelectElementFactory.Identifier, AudioSelectIdentifier) }); desktopOptions.CompositeLayoutElementInfos.Add(new CompositeLayoutElementInfo() { Location = new Location(7, 3), ModuleInfo = new ModuleInitializationInfo(AudioSessionsElementFactory.Identifier, AudioSessionsIdentifier) }); optionsService.SetDefaultOptions(DefaultCompositeLayout, desktopOptions); var runOptions = new RunOptions(); runOptions.Executable = "calc.exe"; runOptions.Symbol = FontAwesomeRes.fa_calculator; optionsService.SetDefaultOptions(CalcIdentifier, runOptions); var weatherServiceOptions = new OpenWeatherOptions { OpenWeatherApiKey = "3e1cbac94caf82e428a662bc15b2fe9e" }; optionsService.SetDefaultOptions(OpenWeatherService.Identifier, weatherServiceOptions); var weatherOptions = new WeatherOptions() { Place = "Dachau" }; optionsService.SetDefaultOptions(WeatherIdentifier, weatherOptions); var applicationTransitionOptions = new ApplicationChangeTransitionOptions(Devices.FirstOrDefault()?.Id ?? new Identifier()); applicationTransitionOptions.Process = "Calculator"; applicationTransitionOptions.LayoutId = DefaultNumpadLayout; optionsService.SetDefaultOptions(DefaultApplicationChangeTransitionCalc, applicationTransitionOptions); applicationTransitionOptions = new ApplicationChangeTransitionOptions(Devices.FirstOrDefault()?.Id ?? new Identifier()); applicationTransitionOptions.Process = "EXCEL"; applicationTransitionOptions.LayoutId = DefaultNumpadLayout; optionsService.SetDefaultOptions(DefaultApplicationChangeTransitionExcel, applicationTransitionOptions); applicationTransitionOptions = new ApplicationChangeTransitionOptions(Devices.FirstOrDefault()?.Id ?? new Identifier()); applicationTransitionOptions.Process = "TOTALCMD64"; applicationTransitionOptions.LayoutId = DefaultNumpadLayout; optionsService.SetDefaultOptions(DefaultApplicationChangeTransitionTotalCmd, applicationTransitionOptions); var idleOptions = new IdleTransitionOptions(Devices.FirstOrDefault()?.Id ?? new Identifier()) { LayoutId = DefaultScreenSaverLayout }; optionsService.SetDefaultOptions(DefaultIdleTransition, idleOptions); var startupTransitionOptions = new StartupTransitionOptions(Devices.FirstOrDefault()?.Id ?? new Identifier()) { LayoutId = DefaultCompositeLayout }; optionsService.SetDefaultOptions(DefaultStartupTransition, startupTransitionOptions); var clockOptions = new ClockElementOptions() { TimerLayoutIdentifier = DefaultTimerLayout }; optionsService.SetDefaultOptions(ClockIdentifier, clockOptions); var powerOffOptions = new PowerOptions() { CallLayout = true, Action = PowerAction.PowerOff }; optionsService.SetDefaultOptions(PowerOffIdentifier, powerOffOptions); var calendarElementOptions = new CalendarElementOptions() { ExpiredMeetingTolerance = TimeSpan.FromMinutes(2), UpcomingMeetingColor = Color.OrangeRed, UpcomingMeetingNotificationPeriod = TimeSpan.FromMinutes(5) }; optionsService.SetDefaultOptions(CalendarIdentifier, calendarElementOptions); var audioSelectOptions = new AudioSelectOptions(); audioSelectOptions.Names.Add("{0.0.0.00000000}.{4eff022d-8d54-413f-9020-581e6654434b}", "Наушники"); audioSelectOptions.Names.Add("{0.0.0.00000000}.{5325d718-fd5e-479b-907c-a4873af76102}", "Камера"); audioSelectOptions.Names.Add("{0.0.0.00000000}.{ba74e64f-2267-4701-ab2e-2cc8685c124d}", "Колонки"); optionsService.SetDefaultOptions(AudioSelectIdentifier, audioSelectOptions); var audioSessionsOptions = new AudioSessionsOptions(); optionsService.SetDefaultOptions(AudioSessionsIdentifier, audioSessionsOptions); var lastFmOptions = new LastFmOptions() { Domain = "http://ws.audioscrobbler.com", ApiKey = "d1a52a26a6f62158fbd86090441f81fb" }; optionsService.SetDefaultOptions(LastFmAlbumCoverService.Identifier, lastFmOptions); var taskbarOptions = new MoveToElementOptions() { Text = FontAwesomeRes.fa_windows, LayoutIdentifier = DefaultTaskbarLayout }; optionsService.SetDefaultOptions(TaskbarIdentifier, taskbarOptions); var remoteOptions = new MoveToElementOptions() { Text = FontAwesomeRes.fa_building, LayoutIdentifier = DefaultRemoteControlLayout }; optionsService.SetDefaultOptions(RemoteIdentifier, remoteOptions); var amipOptions = new AmipOptions() { Separator = new[] { " ||| " }, Filename = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyMusic), "amip.txt") }; optionsService.SetDefaultOptions(AmipPlayerService.Identifier, amipOptions); var layoutManagementHoolOptions = new LongPressHookOptions() { Location = new Location(4, 2), LayoutIdentifier = DefaultLayoutSwitchLayout }; optionsService.SetDefaultOptions(LongPressHook.Identifier, layoutManagementHoolOptions); var netatmoOptions = new NetatmoOptions() { ClientId = "5d7e3403c52009c91e692291", Secret = "lUfYpj3y9WYFGvvw09lE9gZetdNbxgwxFgfWzaHe", Login = "******", Password = "******", HistoryRefreshSpan = TimeSpan.FromMinutes(2), MaxMeasureCount = 200 }; optionsService.SetDefaultOptions(NetatmoWeatherStationService.Identifier, netatmoOptions); }
public static MessageBoxResult getConfirmMsgResult(PowerOptions mode) { string msg = String.Empty; string title = Resources.strWarningTitle; if (mode == PowerOptions.SHUTDOWN) { msg = Resources.strConfirmShutdown; } else if (mode == PowerOptions.REBOOT) { msg = Resources.strConfirmReboot; } else if (mode == PowerOptions.LOGOFF) { msg = Resources.strConfirmLogoff; } else if (mode == PowerOptions.LOCK) { msg = Resources.strConfirmLock; } else if (mode == PowerOptions.SLEEP) { msg = Resources.strConfirmSleep; } else if (mode == PowerOptions.HIBERNATE) { msg = Resources.strConfirmHibernate; } return MessageBox.Show(msg, title, MessageBoxButton.YesNo, MessageBoxImage.Question); }
public void AddPowerOptions(PowerOptions powerOptions) { _powerOptions = powerOptions; }