提升进程权限代码

 
提升进程权限
在枚举/结束系统进程或操作系统服务时,会出现自己权限不足而失败的情况,这时就需要提升自己进程到系统权限,其实提升权限的代码很简单的,看到过的最经典的应该是《WINDOWS核心编程》第四章中操作进程给出的那个函数了,如果我们真的不了解它的操作也不要紧,因为只要在你需要的地方调用下面这个函数就是了,以下是它的代码:
 
BOOL EnablePriv()
{
HANDLE hToken;
if ( OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,&hToken) )
{
       TOKEN_PRIVILEGES tkp;
      
       LookupPrivilegeValue( NULL,SE_DEBUG_NAME,&tkp.Privileges[0].Luid );//修改进程权限
       tkp.PrivilegeCount=1;
       tkp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;
       AdjustTokenPrivileges( hToken,FALSE,&tkp,sizeof tkp,NULL,NULL );//通知系统修改进程权限
      
       return( (GetLastError()==ERROR_SUCCESS) );
}
       return TRUE;
}
 

你可能感兴趣的:(编程,windows,null,token)