110,545
社区成员
发帖
与我相关
我的任务
分享
/// <summary>
/// 提升进程权限
/// </summary>
/// <param name="Privilege">所需要的权限名称,可以到MSDN查找关于Process Token & Privilege内容可以查到</param>
/// <param name="Enable">如果为True 就是打开相应权限,如果为False 则是关闭相应权限</param>
/// <param name="CurrentThread">如果为True 则仅提升当前线程权限,否则提升整个进程的权限</param>
/// <param name="Enabled">输出原来相应权限的状态(打开 | 关闭)</param>
/// <returns></returns>
[DllImport("ntdll.dll")]
public static extern int RtlAdjustPrivilege(string Privilege, bool Enable, bool CurrentThread, int Enabled);
/// <summary>
/// 根据进程名称获取进程
/// </summary>
/// <param name="ProcessName">进程名称</param>
/// <returns></returns>
public Process GetProcessByName(string ProcessName)
{
Process[] pname = Process.GetProcesses(); //取得所有进程
foreach (Process name in pname) //遍历进程
{
if (name.ProcessName.ToLower().IndexOf(ProcessName) != -1) //如果查找到进程名称 返回
return name;
}
return null;
}