16,551
社区成员
发帖
与我相关
我的任务
分享
DWORD AdjustProcessToken(HANDLE hProcess, LPCTSTR lpPrivilegeName){
HANDLE hToken; //令牌句柄
TOKEN_PRIVILEGES tp;
tp.PrivilegeCount =1;
tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
if(!OpenProcessToken(hProcess, TOKEN_ADJUST_PRIVILEGES,&hToken)){
return GetLastError();
}
if(!LookupPrivilegeValue(NULL, lpPrivilegeName, &tp.Privileges[0].Luid)){
return GetLastError();
}
if(!AdjustTokenPrivileges(hToken, FALSE, &tp, sizeof(TOKEN_PRIVILEGES),NULL,NULL)){
return GetLastError();
}
return 0;
}