首先必须澄清一下:UAC不是Vista才有的东西!我反正知道XP就有了,2000不知道,XP上也有UAC,只不过默认没有开启,你要是愿意可以自己开启,只不过太不人性化了,和Linux上的switch user一样不人性化,没次提权必须输入管理员用户的密码。(见下面图)
所以Vista的UAC根本就不是什么新鲜玩意,如果当时完全按照微软的规范编程,升级到Vista以后UAC带来的兼容性问题虽然有但不会这么大。至少不会出现程序运行后什么也干不成,程序也没提权,用户也不知道要右键管理员身份,至少程序可以弹一个框“请切换到管理员用户再使用本程序”或者“本程序必须由管理员用户运行”之类的。
说起UAC,真是个让人又爱又恨的东西,爱他能给系统带来很大的安全性,恨他让我们的程序不能轻易获得管理员权限来尽情的做一些见不得光的事。
基本概念:
1。进程的权限是继承的,也就是说,有管理员权限的程序创建的进程也有管理员权限,没有管理员权限的程序创建进程就没有管理员权限(但高权限进程创建进程必须是高权限不是绝对的)
2