没有运行特权的izpack无法写入C:\ MyDirName

时间:2016-02-22 22:06:53

标签: windows-7 permissions izpack

我有一个自定义Java应用程序和一个IzPack安装程序。多年来,在我的izpack构建文件中,我有以下内容:

<run-privileged condition="izpack.windowsinstall.vista|izpack.windowsinstall.7"/>

问题是某些用户的PC没有管理员权限,但他们仍然希望能够安装该软件包。如果我删除了上面的内容,他们可以运行安装程序但是它会抱怨&#34;这个目录无法写入!&#34;,当他们尝试安装在默认位置时,即C:\ OPENDCS。

然而,同一个用户可以从CMD或资源管理器窗口创建此目录。

有没有办法允许izpack安装程序直接在C:\下创建目录而不以管理员身份运行?

2 个答案:

答案 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