public static void CreateAndRun() {
FilesStorage.Initialize(EntryPoint.ApplicationDataDirectory);
if (AppArguments.GetBool(AppFlag.DisableSaving)) {
ValuesStorage.Initialize();
CacheStorage.Initialize();
} else {
ValuesStorage.Initialize(FilesStorage.Instance.GetFilename("Values.data"),
InternalUtils.GetValuesStorageEncryptionKey(),
AppArguments.GetBool(AppFlag.DisableValuesCompression));
CacheStorage.Initialize(FilesStorage.Instance.GetFilename("Cache.data"), AppArguments.GetBool(AppFlag.DisableValuesCompression));
}
if (!AppArguments.GetBool(AppFlag.DisableLogging)) {
var logFilename = EntryPoint.GetLogName("Main Log");
Logging.Initialize(FilesStorage.Instance.GetFilename("Logs", logFilename), AppArguments.GetBool(AppFlag.OptimizeLogging, true));
Logging.Write($"App version: {BuildInformation.AppVersion} ({BuildInformation.Platform}, {WindowsVersionHelper.GetVersion()})");
}
if (AppArguments.GetBool(AppFlag.IgnoreSystemProxy, true)) {
WebRequest.DefaultWebProxy = null;
}
NonfatalError.Initialize();
LocaleHelper.InitializeAsync().Wait();
new App().Run();
}