VC判断进程是否具有administrator权限的方法
本文实例讲述了VC判断进程是否具有admin权限的方法。是的话返回TRUE,否则为FALSE。分享给大家供大家参考。具体实现方法如下:
staticBOOLIsAdmin(void)
{
HANDLE hAccessToken;
BYTE InfoBuffer[1024];
PTOKEN_GROUPS ptgGroups;
DWORD dwInfoBufferSize;
PSID psidAdministrators;
SID_IDENTIFIER_AUTHORITYsiaNtAuthority=SECURITY_NT_AUTHORITY;
UINT i;
BOOL bRet=FALSE;
if(!OpenProcessToken(GetCurrentProcess(),TOKEN_QUERY,&hAccessToken))
returnbRet;
bRet=GetTokenInformation(hAccessToken,TokenGroups,InfoBuffer,1024,&dwInfoBufferSize);
CloseHandle(hAccessToken);
if(!bRet)
returnbRet;
if(!AllocateAndInitializeSid(&siaNtAuthority,
2,
SECURITY_BUILTIN_DOMAIN_RID,
DOMAIN_ALIAS_RID_ADMINS,
0,0,0,0,0,0,
&psidAdministrators))
returnFALSE;
bRet=FALSE;
ptgGroups=(PTOKEN_GROUPS)InfoBuffer;
for(i=0;i<ptgGroups->GroupCount;i++)
if(EqualSid(psidAdministrators,ptgGroups->Groups[i].Sid))
bRet=TRUE;
FreeSid(psidAdministrators);
returnbRet;
}
希望本文所述对大家的VC程序设计有所帮助。
热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短