获取是否提升了单独的进程

Get whether separate process is elevated

为了获取当前进程是否运行管理员权限,我们使用如下C#代码:

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

但是,我正在尝试查找另一个 单独的 进程是否已提升。

我该如何以编程方式执行此操作?

试试这个:

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());
}
                             ...