我制作了一个Java应用程序,并在我的电脑和我创造的电脑上测试了它,到目前为止一切顺利......
但是这个应用程序是为我的另一个有迪斯科的朋友准备的,当我在他的电脑(Windows Vista 32 位)上“安装”我的应用程序时,它不起作用,然后我去搜索和搜索,发现问题是权限...我安装了 vista 32 位和 xp 32 位的虚拟机来进行一些测试,但我无法以完全管理员权限运行我的应用程序。
有什么方法可以创建批处理文件或允许我以所有权限运行我的应用程序的文件吗?我的意思是因为我需要连接到计算机的 COM 端口以从设备获取一些数据,并且我需要存储一些文件,并且由于我使用的是外部库,所以我可能需要一些我不知道的权限...我已经尝试过了,但没有任何效果:
elevate "c:\Program Files\Java\jre\bin\java.exe" -jar "%CD%\installer.jar"
使用微软的提升脚本,我还创建了一个批处理文件
runas /user:Administrator myjar.jar
但没有任何效果:\
有任何想法吗?先感谢您
这个答案适用于那些愿意为其 jar 或 java 类提供管理权限的人。成功开发一个exe来编辑admin中保存的文件后。受限目录,我为您制定了以下步骤,希望对您有所帮助:
需要理解的事情:
1) Jars 不会直接使用权限编译,而是必须用其他一些 mainfest 文件包装它们,最终获得能够在 windows xp/ vista/ 或更高版本上以权限运行的 exe 文件。实际上,到目前为止可能的答案是,在运行之前,exe 会强制用户授予管理员权限,这与以前不同,用户需要知道如何使用管理员权限运行 jar,这是不友好的。
现在简单的步骤:
创建像 try2.jar 这样的 jar 文件,其中包含一些清单文件 - 我的 1.mf 一如既往。因此,jar 文件的绝对路径将是 C:\try.jar。
现在你需要下载一个软件“Launch4j”,它将帮助你打包jar文件。它的下载链接是:http://sourceforge.net/projects/launch4j/files/launch4j-3/3.1.0-beta2/
现在取出5分钟。并观看本教程:http://www.youtube.com/watch?v=mARUFRknTYQ;这将告诉您Launch4j的基本功能。但这里并不清楚如何为您的 exe 创建清单文件。
-
学习完这些后,然后创建一个清单文件,它是一个简单的文本文件,扩展名为“.manifest”保存。但这里需要注意一些事情:首先,您的 mainfest 文件必须与要创建的最终 exe 文件具有相同的名称。就我而言,我的 exe 名称应该是“Launchme.exe”,因此,我的清单文件必须命名为“Launchme.manifest”。其次,在清单文件中复制以下内容:
<?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="highestAvailable" uiAccess="False" />
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
将上述代码复制到您的清单文件中。这里第6行是整个问题的关键。然后保存并关闭它。
- 现在启动 Launch4j,根据您的条件填写所有教授的文本字段,就像视频中一样。在 Wrapper mainfest 列中添加此文件清单文件。然后单击“保存配置”选项,然后单击--Build Wrapper。
现在您有包含 jar 的 exe,它要求用户在执行之前授予管理员权限。现在用户除了点击之外不需要知道任何事情!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)