VC判断当前用户有无Administrator的权限(用EqualSid API函数判断与Admin是否在一个组的Sid)
- /************************************************************************/
- /* 函数说明:判断有无Administrator的权限
- /* 参 数:无
- /* 返 回 值:成功返回TRUE,否则返回FALSE
- /* By:Koma 2009.07.28 23:30
- /************************************************************************/
- BOOL IsAdmin()
- {
- HANDLE hAccessToken;
- BYTE * InfoBuffer = new BYTE[1024];
- PTOKEN_GROUPS ptgGroups;
- DWORD dwInfoBufferSize;
- PSID psidAdministrators;
- SID_IDENTIFIER_AUTHORITY siaNtAuthority = SECURITY_NT_AUTHORITY;
- if(!OpenProcessToken(GetCurrentProcess(),TOKEN_QUERY,&hAccessToken))
- {
- delete InfoBuffer;
- return FALSE;
- }
- if(!GetTokenInformation(hAccessToken,TokenGroups,InfoBuffer,1024,&dwInfoBufferSize))
- {
- delete InfoBuffer;
- CloseHandle(hAccessToken);
- return FALSE;
- }
- CloseHandle(hAccessToken);
- if(!AllocateAndInitializeSid(&siaNtAuthority,
- 2,
- SECURITY_BUILTIN_DOMAIN_RID,
- DOMAIN_ALIAS_RID_ADMINS,
- 0,0,0,0,0,0,
- &psidAdministrators))
- {
- delete InfoBuffer;
- return FALSE;
- }
- ptgGroups = (PTOKEN_GROUPS)InfoBuffer;
- for(UINT i = 0; i < ptgGroups->GroupCount; i++)
- {
- if(EqualSid(psidAdministrators,ptgGroups->Groups[i].Sid))
- {
- FreeSid(psidAdministrators);
- delete InfoBuffer;
- return TRUE;
- }
- }
- return FALSE;
- }
http://blog.csdn.net/wangningyu/article/details/4389546
VC判断当前用户有无Administrator的权限(用EqualSid API函数判断与Admin是否在一个组的Sid)的更多相关文章
- 判断当前用户有无Administrator的权限
很方便的一个函数,有兴趣的看看! /************************************************************************/ /* 函数说明: ...
- 修改hosts文件(判断是否为管理员/以管理员权限运行脚本)
将以下命令保存为 HostsModify.ps1,然后执行即可 #该脚本用来添加hosts解析记录.脚本在执行的时候会判断当前用户是否为管理员,如果不是则弹出提示框口,要求输入相应密码 If (-NO ...
- 【Java EE 学习 76 上】【数据采集系统第八天】【角色授权】【用户授权】【权限的粗粒度控制】【权限的细粒度控制】
一.角色管理 单击导航栏上的"角色管理"超链接,跳转到角色管理界面,在该界面上显示所有角色,并提供角色的增加和删除.修改超链接. 1.增加新角色(角色授权) 流程:单击增加新角色超 ...
- 在Sharepoint 2013中,使用JS判断当前用户是否在某个组里面
使用Sharepoint客户端对象模型,判断当前用户是否在某个组里面. 在View 和 Edit List Item的时候使用,使用户编辑修改List Item的时候有权限的区分. 在Edit 页面加 ...
- linux添加用户、用户组、权限
# useradd –d /usr/sam -m sam 此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录). 假 ...
- vue-router如何根据不同的用户给不同的权限
闲聊: 小颖去年在上家公司用的vue1.0之前在做路由这块用的router.map,但是现在vue2.0里已经不能用了,所以之前解决权限问题的例子,小颖也参考不了呜呜 之前看一个美女写的:elemem ...
- Linux入门:增加用户,并赋予权限
一.增加用户 1.增加用户,并指定主目录 # useradd –d /usr/sam -m sam此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/us ...
- Linux 用户身份与进程权限
在学习 Linux 系统权限相关的主题时,我们首先关注的基本都是文件的 ugo 权限.ugo 权限信息是文件的属性,它指明了用户与文件之间的关系.但是真正操作文件的却是进程,也就是说用户所拥有的文件访 ...
- 使用 Shiro 设计基于用户、角色、权限的通用权限管理系统
一.前言 在大型的信息管理系统中,经常涉及到权限管理系统 下面来个 demo,很多复杂的系统的设计都来自它 代码已经放到github上了,地址:https://github.com/larger5/s ...
随机推荐
- hdu 1563 Find your present!
Find your present! Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- oledb方式读取excel文件
进入博客园后台发现12年11月份写的草稿没发,时隔1年,把它拉出来晒晒太阳. 前言 第一次做Excel文件导入,采用了oledb,不足之处,还请各位大牛指出,谨以此文对导入Excel做个总结. 一般步 ...
- ACM——线性表操作
线性表操作 时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte总提交:2795 测试通过:589 描述 线性表是n个元素 ...
- 在 APK 中找不到对应的 securityguard***.so 文件或者 so 文件载入出错
1.解压查看你的apk是不是将so打进去了,如果没有打进入查看自己的jnilibs是否指定 2.查看手机是否是64的手机.因为百川的安全包没有64的支持,所以目前是以兼容包的形式给的包.如果第三方有6 ...
- 四、使用Maven和使用Eclipse构建javaWeb项目
环境前边已经搭建过了,我们就再弄了. 1.使用Maven构建javaWeb项目 (1).键入以下命令: $ mvn archetype:generate -DgroupId=com.holytax.w ...
- IOS开发之KVC与KVO简述
KVC:Key-Value Coding KVO:Key-Value Observing Person.m #import <Foundation/Foundation.h> @inter ...
- 10.20_web编辑器复制粘贴图片
(1) http://q.cnblogs.com/q/19865/ (2) http://www.oschina.net/search?scope=project&q=FreeTextBox
- Ubuntu系统的安装
在上一篇博客中,我们已经建立了一个“空白”的虚拟Ubuntu镜像,在这篇博客中,我们将介绍如何安装并进入完整的Ubuntu系统. 写在前面:不同版本的系统在安装过程中,有些操作可能会不同,但是其核心步 ...
- OpenCV(6)-腐蚀和膨胀
腐蚀和膨胀属于形态学操作. 腐蚀和膨胀 腐蚀是指:将卷积核B滑过图像A,找出卷积核区域内最小像素值作为锚点像素值.这一操作可以扩大低像素值区域. 膨胀是指:将卷积核B滑过图像A,找出卷积核区域内最大像 ...
- Andriod 中常见错误
1.Open quote is expected for attribute "android:name" associated with an element type &quo ...