From b1be4a48477d315174e9b8af35ef28c54086ec55 Mon Sep 17 00:00:00 2001 From: Timothy Baldridge Date: Tue, 20 Jul 2021 16:16:27 -0600 Subject: [PATCH] Launcher now creates a `wabbajack-cli.bat` file --- Wabbajack.Launcher/MainWindowVM.cs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/Wabbajack.Launcher/MainWindowVM.cs b/Wabbajack.Launcher/MainWindowVM.cs index e8fd1eb8..e6ab126f 100644 --- a/Wabbajack.Launcher/MainWindowVM.cs +++ b/Wabbajack.Launcher/MainWindowVM.cs @@ -154,9 +154,12 @@ namespace Wabbajack.Launcher .OrderByDescending(v => Version.TryParse(Path.GetFileName(v), out var ver) ? ver : new Version(0, 0, 0, 0)) .FirstOrDefault(); + + var filename = Path.Combine(wjFolder, "Wabbajack.exe"); + await CreateBatchFile(filename); var info = new ProcessStartInfo { - FileName = Path.Combine(wjFolder, "Wabbajack.exe"), + FileName = filename, Arguments = string.Join(" ", Environment.GetCommandLineArgs().Skip(1).Select(s => s.Contains(' ') ? '\"' + s + '\"' : s)), WorkingDirectory = wjFolder, }; @@ -181,6 +184,15 @@ namespace Wabbajack.Launcher } } + private async Task CreateBatchFile(string filename) + { + filename = Path.Combine(Path.GetDirectoryName(filename), "wabbajack-cli.exe"); + var data = $"\"{filename}\" %*"; + var file = Path.Combine(Directory.GetCurrentDirectory(), "wabbajack-cli.bat"); + if (File.Exists(file) && await File.ReadAllTextAsync(file) == data) return; + await File.WriteAllTextAsync(file, data); + } + private void UpdateProgress(object sender, DownloadProgressChangedEventArgs e) { Status = $"Downloading {_version.Tag} ({e.ProgressPercentage}%)...";