手机
当前位置:查字典教程网 >编程开发 >C语言 >VC判断进程是否具有administrator权限的方法
VC判断进程是否具有administrator权限的方法
摘要:本文实例讲述了VC判断进程是否具有admin权限的方法。是的话返回TRUE,否则为FALSE。分享给大家供大家参考。具体实现方法如下:复制代...

本文实例讲述了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程序设计有所帮助。

【VC判断进程是否具有administrator权限的方法】相关文章:

C语言中const,volatile,restrict的用法总结

C/C++中退出线程的四种解决方法

判断一个数是不是素数的方法

C++读写.mat文件的方法

MFC中exe图标修改的方法

获取一个文件行数的方法

C++实现正态随机分布的方法

C++实现两个日期间差多少天的解决方法

判断指定的进程或程序是否存在方法小结(vc等)

判断整数序列是否为二元查找树的后序遍历结果的解决方法

精品推荐
分类导航