EXE4J生成的exe文件自动请求管理员权限(UAC)

来源:互联网 发布:淘宝买iphone6s 编辑:程序博客网 时间:2024/05/18 01:31

转自:http://blog.csdn.net/terry_solar/article/details/52796167
最近用JAVA写了一个SWING的小程序,需要修改本地的Hosts文件,因为Hosts文件属于系统文件,只有管理员权限才可写,而我用EXE4J打包的exe程序是不会自动请求管理员权限的,也就是WIN7之后的系统UAC。而java中并没有Visual Studio打包时的UAC执行级别参数设置,如下图: [caption align=”aligncenter” width=”936”]
这里写图片描述

al Studio UAC设置[/caption] 这时候就要用到Resource Hacker这个工具来对打包好的EXE文件进行修改 下载地址: 链接:
http://pan.baidu.com/s/1sk3TVaP 密码: hpgh
第一步: 打开下载好的Resource Hacker软件 [caption align=”aligncenter” width=”800”]
这里写图片描述
ourceHacker[/caption]
第二步: 将需要修改的EXE文件拖入Resource Hacker界面内打开,然后打开左侧菜单的清单选项
这里写图片描述
第三步: 在左侧的编辑区内找到下图中蓝色部分,也就是requestedExecutionLevel标签 EXE4J打包的exe文件中,level属性值应该默认是asInvoker,是不会请求管理员权限的
这里写图片描述
第四步: 将level属性的值改成level=”requireAdministrator” 修改完成后一定要点击开始按钮进行编译,修改才能生效,如下图:
这里写图片描述
五、编译完成后直接点击关闭Resource Hacker界面 ,弹出提示框,选择是,并覆盖保存之前的EXE文件
这里写图片描述
这里写图片描述
第六步: 最后,右键刷新一下,看看原来的EXE文件上是不是多了一个UAC小盾牌!
这里写图片描述

0 0
原创粉丝点击