/
githubmirror
/
PowerToys
Обзор
Документация
Войти
/
githubmirror
/
PowerToys
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/modules/FileLocksmith/FileLocksmithUI/FileLocksmithXAML/App.xaml.cs
74 строки
3 KB
Stefan Markovic
[General]Support language selection (#34971)
25 сен 2024, 23:20
Не верифицирован
25 сен 2024, 23:20
5b616c9
Код
Авторство
О чём код?
// Copyright (c) Microsoft Corporation // The Microsoft Corporation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using System; using System.Linq; using ManagedCommon; using Microsoft.UI.Dispatching; using Microsoft.UI.Xaml; namespace FileLocksmithUI { /// <summary> /// Provides application-specific behavior to supplement the default Application class. /// </summary> public partial class App : Application { /// <summary> /// Initializes a new instance of the <see cref="App"/> class. /// Initializes the singleton application object. This is the first line of authored code /// executed, and as such is the logical equivalent of main() or WinMain(). /// </summary> public App() { string appLanguage = LanguageHelper.LoadLanguage(); if (!string.IsNullOrEmpty(appLanguage)) { Microsoft.Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = appLanguage; } Logger.InitializeLogger("\\File Locksmith\\FileLocksmithUI\\Logs"); this.InitializeComponent(); UnhandledException += App_UnhandledException; } /// <summary> /// Invoked when the application is launched normally by the end user. Other entry points /// will be used such as when the application is launched to open a specific file. /// </summary> /// <param name="args">Details about the launch request and process.</param> protected override void OnLaunched(LaunchActivatedEventArgs args) { if (PowerToys.GPOWrapper.GPOWrapper.GetConfiguredFileLocksmithEnabledValue() == PowerToys.GPOWrapper.GpoRuleConfigured.Disabled) { Logger.LogWarning("Tried to start with a GPO policy setting the utility to always be disabled. Please contact your systems administrator."); Environment.Exit(0); // Current.Exit won't work until there's a window opened. return; } bool isElevated = PowerToys.FileLocksmithLib.Interop.NativeMethods.IsProcessElevated(); if (isElevated) { if (!PowerToys.FileLocksmithLib.Interop.NativeMethods.SetDebugPrivilege()) { Logger.LogWarning("Couldn't set debug privileges to see system processes."); } } _window = new MainWindow(isElevated); _window.Activate(); } private void App_UnhandledException(object sender, Microsoft.UI.Xaml.UnhandledExceptionEventArgs e) { Logger.LogError("Unhandled exception", e.Exception); } private Window _window; } }