alwaystick 发表于 2017-1-28 19:21:57

如何在需要提升管理员权限时通过点击按钮调出UAC获得权限?

最近得到一个小软件,其中的一个特性吸引到我,如图:

这个软件刚启动时会弹出图中的提示框,单击【确定】后会弹出UAC弹窗,用户直接点击【是】就能让这个软件得到管理员权限。
不知道AU3能不能实现这个功能,论坛是有相关的方法,不过相比这个软件的方法有个缺点,就是用论坛的方法必须要让脚本退出后再运行才能拿到管理员权限,但是这个软件不用,直接确认软件就有管理员权限了,不用重新运行。
不知各位有何主意,能够让AU3直接提权不用重新运行?

229989799 发表于 2017-1-28 20:49:54

注册表
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

alwaystick 发表于 2017-1-28 22:21:03

回复 2# 229989799
是禁用UAC吗?这个软件没有禁用UAC,只是让用户确认后直接提升权限。

229989799 发表于 2017-1-28 23:55:11

你不能模仿一下么。。用户确认后打开UAC,执行完毕关闭UAC

alwaystick 发表于 2017-1-30 21:38:38

回复 4# 229989799
这样当然也可以...不过,我想看看有没有更好的办法,毕竟这个软件做到了无需禁用UAC。而且有些电脑要重启后UAC的关闭(或启用)才生效。
这个帖子只是讨论一下有没有好方法,仅此而已,不是要急于解决问题。

nmgwddj 发表于 2017-1-31 21:17:38

脚本首行添加如下代码,编译后的程序会请求管理员权限。自然会弹出 UAC 确认的对话框由用户确定。

#RequireAdmin

jsdn2000 发表于 2017-1-31 22:31:49

还是禁用UAC的好一些。

alwaystick 发表于 2017-2-1 21:39:21

本帖最后由 alwaystick 于 2017-2-1 21:46 编辑

回复 6# nmgwddj
如果AU3脚本有些操作是不用提升权限的,但一些特殊操作是需要权限的,用户只需执行不用提升权限的操作,那怎么办?特别是一些域环境下的电脑,一般只有标准用户权限,如果直接#RequireAdmin,用户会很不方便。这种情况就只能分成两个脚本,一个不提升权限,另一个提升权限,但这就很麻烦,没有这个小软件来的简洁方便。并且AU3用#RequireAdmin后,如果提升权限失败的话就启动不起来了,标准用户也就没法用。

alwaystick 发表于 2017-2-1 21:44:04

回复 7# jsdn2000
感谢回帖!不过我只是想看看有没有比关闭UAC更好的办法,我并不急于解决问题,只是探讨。
页: [1]
查看完整版本: 如何在需要提升管理员权限时通过点击按钮调出UAC获得权限?