我有一个自定义Java应用程序和一个IzPack安装程序。多年来,在我的izpack构建文件中,我有以下内容:
<run-privileged condition="izpack.windowsinstall.vista|izpack.windowsinstall.7"/>
问题是某些用户的PC没有管理员权限,但他们仍然希望能够安装该软件包。如果我删除了上面的内容,他们可以运行安装程序但是它会抱怨&#34;这个目录无法写入!&#34;,当他们尝试安装在默认位置时,即C:\ OPENDCS。
然而,同一个用户可以从CMD或资源管理器窗口创建此目录。
有没有办法允许izpack安装程序直接在C:\下创建目录而不以管理员身份运行?
答案 0 :(得分:0)
您可以将目录创建操作打包到create-dirs.bat
批处理文件中,您可以将其标记为<executable>
并执行stage="postinstall"
。这样,目录创建将使用给定用户的权限执行,这些权限(根据您的帖子)应该可以正常工作。
EDIT 29/02/2016 :您可以将此文件放入第一个&#34;虚拟&#34; <pack>
,如上所述标记<executable>
并执行stage="postinstall"
,这将在第一个 虚拟 包之后执行已安装。在安装下一个包(即您的第一个有用的包)时,您已经创建了该文件夹。
请注意,postinstall
在安装后不会运行批处理文件,而在 <pack>
&#39; 之后 安装
答案 1 :(得分:0)
请使用izpack v5.0.7检查行为。您提到的问题应该通过以下问题解决:https://izpack.atlassian.net/browse/IZPACK-1355