Метод проверяет, запущено ли приложение от имени администратора, и если нет, перезапускает себя от имени администратора.
Оригинал темы
C#:
using System;
using System.Diagnostics;
using System.Reflection;
using System.Security.Principal;
C#:
rivate static void AdminRelauncher()
{
if (!IsRunAsAdmin())
{
ProcessStartInfo proc = new ProcessStartInfo();
proc.UseShellExecute = true;
proc.WorkingDirectory = Environment.CurrentDirectory;
proc.FileName = Assembly.GetEntryAssembly().Location.Replace(".dll", ".exe");
proc.Verb = "runas";
try
{
Process.Start(proc);
Environment.Exit(0);
}
catch (Exception ex)
{
Console.WriteLine("This program must be run as an administrator! \n\n" + ex.ToString());
}
}
}
Оригинал темы