2019-10-03 04:35:29 +00:00
|
|
|
|
using System;
|
2019-10-30 19:36:02 +00:00
|
|
|
|
using System.Reflection;
|
2019-10-03 04:35:29 +00:00
|
|
|
|
using System.Windows;
|
|
|
|
|
using Wabbajack.Common;
|
2019-10-16 03:10:34 +00:00
|
|
|
|
using Wabbajack.Lib.Updater;
|
2019-07-22 22:17:46 +00:00
|
|
|
|
|
|
|
|
|
namespace Wabbajack
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
2019-09-14 04:35:42 +00:00
|
|
|
|
/// Interaction logic for App.xaml
|
2019-07-22 22:17:46 +00:00
|
|
|
|
/// </summary>
|
|
|
|
|
public partial class App : Application
|
|
|
|
|
{
|
2019-10-03 04:35:29 +00:00
|
|
|
|
public App()
|
|
|
|
|
{
|
2019-10-10 05:04:28 +00:00
|
|
|
|
/*
|
2019-10-06 21:58:36 +00:00
|
|
|
|
Utils.Log($"Wabbajack Build - {ThisAssembly.Git.Sha}");
|
|
|
|
|
SetupHandlers();
|
|
|
|
|
|
2019-10-03 04:35:29 +00:00
|
|
|
|
var args = Environment.GetCommandLineArgs();
|
|
|
|
|
if (args.Length > 1)
|
|
|
|
|
{
|
2019-10-07 17:33:34 +00:00
|
|
|
|
Utils.SetLoggerFn(f => { });
|
|
|
|
|
WorkQueue.Init((a, b, c) => { }, (a, b) => { });
|
2019-10-03 04:35:29 +00:00
|
|
|
|
var updater = new CheckForUpdates(args[1]);
|
|
|
|
|
if (updater.FindOutdatedMods())
|
|
|
|
|
{
|
|
|
|
|
Environment.Exit(0);
|
|
|
|
|
}
|
|
|
|
|
Environment.Exit(1);
|
2019-10-10 05:04:28 +00:00
|
|
|
|
}*/
|
2019-10-03 04:35:29 +00:00
|
|
|
|
|
2019-10-30 19:36:02 +00:00
|
|
|
|
var appPath = Assembly.GetExecutingAssembly().Location;
|
2019-10-31 11:14:14 +00:00
|
|
|
|
if (!ExtensionManager.IsAssociated() || ExtensionManager.NeedsUpdating(appPath))
|
2019-10-30 19:36:02 +00:00
|
|
|
|
{
|
|
|
|
|
ExtensionManager.Associate(appPath);
|
|
|
|
|
}
|
|
|
|
|
|
2019-10-30 17:09:55 +00:00
|
|
|
|
string[] args = Environment.GetCommandLineArgs();
|
|
|
|
|
StartupUri = new Uri("UI/ModeSelectionWindow.xaml", UriKind.Relative);
|
|
|
|
|
if (args.Length != 3) return;
|
|
|
|
|
if (!args[1].Contains("-i")) return;
|
|
|
|
|
// modlists gets loaded using a shell command
|
|
|
|
|
StartupUri = new Uri("UI/MainWindow.xaml", UriKind.Relative);
|
2019-10-03 04:35:29 +00:00
|
|
|
|
}
|
2019-10-06 21:58:36 +00:00
|
|
|
|
|
|
|
|
|
private void SetupHandlers()
|
|
|
|
|
{
|
|
|
|
|
AppDomain.CurrentDomain.UnhandledException += AppHandler;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void AppHandler(object sender, UnhandledExceptionEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
Utils.Log("Uncaught error:");
|
|
|
|
|
Utils.Log(((Exception)e.ExceptionObject).ExceptionToString());
|
|
|
|
|
}
|
2019-07-22 22:17:46 +00:00
|
|
|
|
}
|
2019-09-14 04:35:42 +00:00
|
|
|
|
}
|