From 83a846f7772d953c0355b4568401487dd14a76c4 Mon Sep 17 00:00:00 2001
From: bluepilledgreat <97983689+bluepilledgreat@users.noreply.github.com>
Date: Tue, 23 Apr 2024 16:25:48 +0100
Subject: [PATCH] disallow uninstall on first run
---
Bloxstrap/App.xaml.cs | 7 +++++++
Bloxstrap/Resources/Strings.Designer.cs | 9 +++++++++
Bloxstrap/Resources/Strings.resx | 3 +++
3 files changed, 19 insertions(+)
diff --git a/Bloxstrap/App.xaml.cs b/Bloxstrap/App.xaml.cs
index 70ee662..4118020 100644
--- a/Bloxstrap/App.xaml.cs
+++ b/Bloxstrap/App.xaml.cs
@@ -146,6 +146,13 @@ namespace Bloxstrap
return;
}
+ if (LaunchSettings.IsUninstall && IsFirstRun)
+ {
+ Frontend.ShowMessageBox(Bloxstrap.Resources.Strings.Bootstrapper_FirstRunUninstall, MessageBoxImage.Error);
+ Terminate(ErrorCode.ERROR_INVALID_FUNCTION);
+ return;
+ }
+
// we shouldn't save settings on the first run until the first installation is finished,
// just in case the user decides to cancel the install
if (!IsFirstRun)
diff --git a/Bloxstrap/Resources/Strings.Designer.cs b/Bloxstrap/Resources/Strings.Designer.cs
index 408db21..2a7a0da 100644
--- a/Bloxstrap/Resources/Strings.Designer.cs
+++ b/Bloxstrap/Resources/Strings.Designer.cs
@@ -133,6 +133,15 @@ namespace Bloxstrap.Resources {
}
}
+ ///
+ /// Looks up a localized string similar to You must first install Bloxstrap before uninstalling..
+ ///
+ public static string Bootstrapper_FirstRunUninstall {
+ get {
+ return ResourceManager.GetString("Bootstrapper.FirstRunUninstall", resourceCulture);
+ }
+ }
+
///
/// Looks up a localized string similar to Roblox has now finished rolling out the new game client update, featuring 64-bit support and the Hyperion anticheat. ReShade does not work with this update, and so it has now been disabled and removed from Bloxstrap.
///
diff --git a/Bloxstrap/Resources/Strings.resx b/Bloxstrap/Resources/Strings.resx
index 6e07e83..d24de5b 100644
--- a/Bloxstrap/Resources/Strings.resx
+++ b/Bloxstrap/Resources/Strings.resx
@@ -142,6 +142,9 @@ Would you like to switch to the default channel ({1})?
Roblox was launched via a deeplink, however the desktop app is required for deeplink launching to work. Because you've opted to disable the desktop app, it will temporarily be re-enabled for this launch only.
+
+ You must first install Bloxstrap before uninstalling.
+
Roblox has now finished rolling out the new game client update, featuring 64-bit support and the Hyperion anticheat. ReShade does not work with this update, and so it has now been disabled and removed from Bloxstrap.