获取当前系统用户是管理员权限还是普通用户权限
2012-11-07 21:28
761 查看
获取当前系统用户是管理员权限还是普通用户权限
BOOL WINAPI IsAdminMode(){
HANDLE hAccessToken;
BYTE *InfoBuffer;
PTOKEN_GROUPS ptgGroups;
DWORD dwInfoBufferSize;
PSID psidAdministrators;
SID_IDENTIFIER_AUTHORITY siaNtAuthority = SECURITY_NT_AUTHORITY;
UINT i;
BOOL bRet = FALSE;
if(!OpenProcessToken(GetCurrentProcess(),TOKEN_QUERY,&hAccessToken))
goto cleanup;
InfoBuffer = new BYTE[1024];
if(!InfoBuffer)
goto cleanup;
bRet = GetTokenInformation(hAccessToken,
TokenGroups,
InfoBuffer,
1024,
&dwInfoBufferSize);
CloseHandle(hAccessToken);
if(!bRet)
goto cleanup;
if( !AllocateAndInitializeSid(&siaNtAuthority,
2,
SECURITY_BUILTIN_DOMAIN_RID,
DOMAIN_ALIAS_RID_ADMINS,
0,0,0,0,0,0,&psidAdministrators) )
goto cleanup;
bRet = FALSE;
ptgGroups = (PTOKEN_GROUPS)InfoBuffer;
for(i = 0; i < ptgGroups-> GroupCount; i++)
{
if(EqualSid(psidAdministrators,ptgGroups-> Group[i].Sid))
{
bRet = TRUE;
break;
}
}
FreeSid(psidAdministrators);
cleanup:
if(InfoBuffer)
delete[] InfoBuffer;
return bRet;
}
相关文章推荐
- 获取当前系统用户是管理员权限还是普通用户权限
- linux普通用户获取管理员权限
- linux普通用户获取管理员权限
- WIN8 WIN10系统如何完全获取用户管理员权限
- shell 脚本 判断用户是管理员还是系统用户还是普通用户脚本
- linux普通用户获取管理员权限
- linux普通用户获取管理员权限
- 命令行下 让当前用户获取 管理员权限
- 命令行下 让当前用户获取 管理员权限
- WIN10系统如何完全获取用户管理员权限
- linux普通用户获取管理员权限
- win10系统获取管理员权限卸载程序、删除文件等听语音 浏览:9507|更新:2016-02-23 02:27 很多用户升级win10系统以后,发现卸载某些程序或者删除某些文件的时候,会出现权限不够,
- linux普通用户获取管理员权限
- linux普通用户获取管理员权限
- 用普通用户欺骗,登陆,获取,管理员的最高权限!!!!
- linux普通用户获取管理员权限
- 普通用户如何获取超级管理员权限的步骤
- c#获得本机计算机名字,获得本机当前系统登陆用户和管理员权限,Environment
- 普通用户如何获取超级管理员权限的步骤
- 用 普通 用户欺骗登陆 获取 管理员的最高权限~~~~