C# Uruchamianie aplikacji jako Administrator

9-cze-2012

Już raz opisywałem ten temat w http://www.mobilo24.eu/jak-oznaczyc-aplikacje-w-c-tak-by-uruchamiala-sie-jako-administrator-c-uac-i-elevated-rights/

Tym razem trafiłem jednak na ciekawy wpis pod adresem http://www.csharp.pl/viewtopic.php?f=3&t=2255.

Aby ten cenny kawałek kodu nie uciekł przeklejam go poniżej:

static public bool CzyMaszPrawaUAC()
{            
 return new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator);
}

static private void RunElevated(string fileName)
{
 ProcessStartInfo processInfo = new ProcessStartInfo();
 processInfo.Verb = "runas";
 processInfo.FileName = fileName;
 try
  {
   Process.Start(processInfo);
  }
 catch (Exception)
  {               
  }
}

static public void UruchoJakoUAC()
{
 if (!CzyMaszPrawaUAC())
 {
  RunElevated(Application.ExecutablePath);
  Application.Exit();
 }
}

Ciekawe rozwiązanie!

Komentarze:

  1. Mobilo » Blog Archive » Jak oznaczyć aplikację w C# tak by uruchamiała się jako administrator (C# UAC i Elevated rights) napisał,

    […] też: http://www.mobilo24.eu/c-uruchamianie-aplikacji-jako-administrator/ Kategoria: Programowanie c# You can follow any responses to this entry through the RSS 2.0 […]

Autor: Rafał Kraik