手机
当前位置:查字典教程网 >编程开发 >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++ 关于STL中sort()对struct排序的方法

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

将正小数转化为2-9进制小数的实现方法

C++可变参数的实现方法

编译错误error: stray ‘343’in program的解决方法

MFC中exe图标修改的方法

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

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

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

浅析iterator与指针的区别

精品推荐
分类导航