VC判断进程是否具有administrator权限的方法
2014-10-23 15:00
1316 查看
本文实例讲述了VC判断进程是否具有admin权限的方法。是的话返回TRUE,否则为FALSE。分享给大家供大家参考。具体实现方法如下:
复制代码 代码如下: static BOOL IsAdmin(void){
HANDLE hAccessToken;
BYTE InfoBuffer[1024];
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))
return bRet;
bRet = GetTokenInformation(hAccessToken, TokenGroups, InfoBuffer, 1024, &dwInfoBufferSize);
CloseHandle(hAccessToken);
if(!bRet)
return bRet;
if(!AllocateAndInitializeSid(&siaNtAuthority,
2,
SECURITY_BUILTIN_DOMAIN_RID,
DOMAIN_ALIAS_RID_ADMINS,
0,0,0,0,0,0,
&psidAdministrators))
return FALSE;
bRet = FALSE;
ptgGroups = (PTOKEN_GROUPS)InfoBuffer;
for(i=0;i<ptgGroups->GroupCount;i++)
if(EqualSid(psidAdministrators,ptgGroups->Groups[i].Sid))
bRet = TRUE;
FreeSid(psidAdministrators);
return bRet;
}
希望本文所述对大家的VC程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- 如何判断进程是否具有administrator权限
- vc判断当前用户是否具有administrator 权限代码
- VC 判断进程是否是以管理员权限运行,并且判断是否是用户进程而非服务进程
- VC如何判断当前进程处在Administrator权限下
- VC如何判断当前进程处在Administrator权限下
- My way on Linux - [Shell基础] - Bash Shell中判断文件、目录是否存在或者判断其是否具有某类属性(权限)的常用方法
- VC++中如何判断当前用户是否具有管理员权限
- 判断指定的进程或程序是否存在方法小结(vc等)
- VC判断当前用户有无Administrator的权限(用EqualSid API函数判断与Admin是否在一个组的Sid)
- android编程判断应用是否具有某个权限的方法
- VC如何判断当前进程处在Administrator权限下
- 判断指定的进程或程序是否存在方法小结(vc等)
- VC中判断目录,文件是否存在,创建目录的方法
- shell判断文件,目录是否存在或者具有权限
- shell判断文件,目录是否存在或者具有权限
- VC判断当前用户有无Administrator的权限
- VC中判断目录是否存在的方法
- Win32汇编实现判断进程是否拥有某特殊权限
- VC 判断文件是否存在的几种方法
- VC中判断目录,文件是否存在,创建目录,求目录或文件大小的方法