diff --git a/BundleManager/BundleManager.csproj.DotSettings b/BundleManager/BundleManager.csproj.DotSettings deleted file mode 100644 index 6e7fff8..0000000 --- a/BundleManager/BundleManager.csproj.DotSettings +++ /dev/null @@ -1,2 +0,0 @@ - - No \ No newline at end of file diff --git a/BundleManager/Program.cs b/BundleManager/Program.cs index d1f38ff..837a956 100644 --- a/BundleManager/Program.cs +++ b/BundleManager/Program.cs @@ -4,6 +4,7 @@ using System.Globalization; using System.IO; using System.Numerics; +using System.Security.Principal; using System.Windows.Forms; using Microsoft.Win32; @@ -39,6 +40,8 @@ public static void Main(string[] args) fileModeForm = new MainForm(); folderModeForm = new FileView(); + CheckElevation(); + if (args.Length == 0) { bool? preferFolderMode = null; @@ -111,7 +114,22 @@ public static void Main(string[] args) } } } + } + public static void CheckElevation() + { + using (WindowsIdentity identity = WindowsIdentity.GetCurrent()) + { + WindowsPrincipal principal = new(identity); + if (!principal.IsInRole(WindowsBuiltInRole.Administrator)) + { + MessageBox.Show("Bundle Manager is running with standard permissions.\n" + + "Saving may fail in write-protected locations.", + "Running non-elevated", + MessageBoxButtons.OK, + MessageBoxIcon.Warning); + } + } } public static void SavePreferredMode(bool useFolderMode)