Não pode escolher mais do que 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

38 linhas
1.2 KiB

  1. using System;
  2. using System.Security.Principal;
  3. using System.Windows.Forms;
  4. namespace ThunderboltTimeSync {
  5. static class Program {
  6. /// <summary>
  7. /// Checks if the application is currently running with administrator privileges.
  8. /// </summary>
  9. /// <returns>True if the application is running with administrator privileges, false otherwise.</returns>
  10. private static bool IsRunningAsAdministrator() {
  11. WindowsIdentity identity = WindowsIdentity.GetCurrent();
  12. WindowsPrincipal principal = new WindowsPrincipal(identity);
  13. return principal.IsInRole(WindowsBuiltInRole.Administrator);
  14. }
  15. /// <summary>
  16. /// The main entry point for the application.
  17. /// </summary>
  18. [STAThread]
  19. static void Main() {
  20. Application.EnableVisualStyles();
  21. Application.SetCompatibleTextRenderingDefault(false);
  22. if (!IsRunningAsAdministrator()) {
  23. MessageBox.Show(
  24. "This application must be run with administrative privileges. Without administrative privileges, the system time cannot be set.\n\nPlease restart the application as administrator.",
  25. "Administrative Privileges Required",
  26. MessageBoxButtons.OK,
  27. MessageBoxIcon.Error
  28. );
  29. } else {
  30. Application.Run(new FormMain());
  31. }
  32. }
  33. }
  34. }