VOID PromotePrivilege()
{
HANDLE hToken = NULL; //令牌句柄
//获取需要提升权限的进程令牌
//得到 当前进程句柄 所有权限
BOOL IsOk = OpenProcessToken(GetCurrentProcess(),TOKEN_ALL_ACCESS,&hToken);
if (IsOk == TRUE)
{
TOKEN_PRIVILEGES tp;
tp.PrivilegeCount = 1;
//使用LookupPrivilegeValue函数,根据权限的“名称字符串”
//取得权限对应系统上的LUID。同一个权限在不同系统上的LUID不同
LookupPrivilegeValue(NULL,SE_DEBUG_NAME,&tp.Privileges[0].Luid);
tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
//调整访问令牌权限
AdjustTokenPrivileges(hToken,FALSE,&tp,sizeof(tp),NULL,NULL);
CloseHandle(hToken);
}
}
直接调用这个函数即可。