2016-08-04 33 views
0

Um angehoben wird, zu erhalten, ob der aktuelle Prozess mit Administratorrechten ausgeführt wird, verwenden wir die folgende C# -Code:zu Erhalten ob separaten Prozess

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

aber ich versuche, ob ein anderes separaten Verfahren zu finden, ist erhöht oder nicht.

Wie gehe ich programmgesteuert vor?

Antwort

2

Probieren Sie dies aus: https://stackoverflow.com/a/4497572/3049344

var process = Process.GetProcessesByName("YouProcessName").First(); 
IntPtr tokenHandle; 
if (!OpenProcessToken(process.Handle, TOKEN_READ, out tokenHandle)) 
{ 
     throw new ApplicationException("Could not get process token. Win32 Error Code: " + Marshal.GetLastWin32Error()); 
} 
          ...