Windows 小记 13 -- 如何正确获取 UIAccess

UIAccess 特权允许应用访问辅助应用程序的 UI 所在的窗口带。通俗点讲,UIAccess 获取后,具有 WS_EX_TOPMOST 样式的窗口将始终置顶(高于任何应用)。

网络上获取 UIAccess 的一般方法是通过复制特权进程的令牌,并赋予 UIAccess 特权给令牌,然后用这个新的令牌启动进程。

但是,通过我的尝试(可以说是失败的尝试),发现 UIAccess 这个特权必须在进程初始化时使用才有效,为当前进程动态赋予 UIAccess 不能够成功使得窗口置顶。但表现为也具有 UIAccess 特权,因为我通过多种方法检测确信可以动态获取。

最后,UIAccess 只能启动新进程时候赋予,所以需要重启应用。这一点其实有时候是比较麻烦的,因为你的应用必须保存当前的设置,然后注册在重启时恢复状态。

除非你有代码签名(通过程序清单合法地使用最高优先级的 UIAccess),否则 UIAccess 的绕过方法都不是最简单的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

涟幽516

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值