用户帐户控制 (User Account Control)简称UAC,是Windows Vista以及之后操作系统中一组新的基础结构技术,可以帮助阻止恶意程序(有时也称为“恶意软件”)损坏系统,同时也可以帮助组织部署更易于管理的平台。
UAC执行级别在VS里面的设置如下:
测试动作:拷贝文件(从C盘考到C盘)
测试记录:
纵行:用户 横行:编译时设置 | asInvoker | highestAvailable | requireAdministrator |
Adminitrator(Adminitrators) | 成功复制,无提示 | 成功复制,无提示 | 成功复制,无提示 |
TestUser(Adminitrators) | 失败复制,无提示 | 成功复制,有提示 | 成功复制,有提示 |
TestUser(Users) | 失败复制,无提示 | 失败复制,无提示 | 提示输入管理员密码 |
注意:
1.可以查看可执行文件的执行级别的工具MiTeC_EXE_Explorer
2.默认执行级别asInvoker
3.去除提示的方法,如下图,拉倒最低
4.highestAvailable与requireAdministrator的区别是在users组的环境下,执行可执行程序,requireAdministrator会要求输入管理员账号的密码,highestAvailable则会获取当前用户最高权限
5.在Adminitrator(Adminitrators)的用户环境下,无论把用户账户设置设置到任何级别,运行asInvoker或者highestAvailable或者requireAdministrator都不会有任何提示
6.拷贝文件如果是拷贝到非C盘的地方,则asInvoker和highestAvailable都会拷贝成功,且无提示,requireAdministrator则提示输入管理员账户的密码,没有密码则拷贝失败
7.用户账户设置是一个不是全局设置,更改一个用户的设置不会影响到其他用户的设置