易语言等软件自动获取管理员权限,在64位Windows7系统非管理员帐户中执行
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了易语言等软件自动获取管理员权限,在64位Windows7系统非管理员帐户中执行,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1768字,纯文字阅读大概需要3分钟。
内容图文
昨天有易语言开发者向我求助,说他用易语言编译的32位程序软件,发布给64位操作系统Win 7用户使用,因为该用户确定没有管理员权限,而程序启动时又要求必须输入管理员密码,如此陷入困境。 目标企业用户管理严格,要求为普通用户分配管理员权限是不切实际的,只能开发人员从软件开发的角度在技术上解决。
我听到这个问题后,第一感觉是微软用户帐户控制(UAC)引发的,估计通过给 exe 添加特定的 manifest 资源应该可以解决。于是我给了他一段代码,让他用 ResHacker 之类的软件添加到软件里面去,试一试能不能解决问题:
- <? xml version = "1.0" encoding = "UTF-8" standalone = "yes" ?>
- < assembly xmlns = "urn:schemas-microsoft-com:asm.v1" manifestVersion = "1.0" >
- <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
- <security>
- <requestedPrivileges>
- <requestedExecutionLevel level="asInvoker" uiAccess="false" />
- </requestedPrivileges>
- </security>
- </trustInfo>
- </ assembly >
结果测试之后他发现,非常成功的解决了问题。修改后的软件发布给用户测试,启动时也不再提示输入管理员密码了,功能一切正常。
下面对比一下易语言编译时默认加入的 manifest 资源:
- <? xml version = "1.0" encoding = "UTF-8" standalone = "yes" ?>
- < assembly xmlns = "urn:schemas-microsoft-com:asm.v1" manifestVersion = "1.0" >
- <assemblyIdentity
- version="1.0.0.0"
- processorArchitecture="X86"
- name="......"
- type="win32"
- />
- <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
- <security>
- <requestedPrivileges>
- <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
- </requestedPrivileges>
- </security>
- </trustInfo>
- </ assembly >
会发现两者有细微的区别:asInvoker 和 requireAdministrator 的区别。后者会要求软件启动时必须有管理员权限,否则拒绝工作。那能不能一刀切的要求易语言默认采用 asInvoker 呢?恐怕还是不行的,因为修改Windows注册表之类的行为还是必须得有管理员权限的(否则修改无效)。或许在某些条件下可以做一些智能判断?
附 ResHacker (Resource Hacker) 3.6 下载地址:
http://www.angusj.com/resourcehacker/
http://www.crsky.com/soft/1747.html
http://dl.pconline.com.cn/html_2/1/59/id=842&pn=0.html
原文:http://www.cnblogs.com/cron/p/4925233.html
内容总结
以上是互联网集市为您收集整理的易语言等软件自动获取管理员权限,在64位Windows7系统非管理员帐户中执行全部内容,希望文章能够帮你解决易语言等软件自动获取管理员权限,在64位Windows7系统非管理员帐户中执行所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。