[英]How do I get IzPack to add my program to the Windows Registry?
我知道以前曾問過這個問題,但是那里提供的“解決方案”以及IzPack文檔中的“解決方案”實際上並不起作用。 此外,我沒有這個網站上的聲譽,也沒有評論或其他問題或解決方案的任何東西,因此我不得不再次詢問。 我有一個可以正常運行的安裝程序,可以添加快捷方式,並且按照以下示例操作,以查找錯誤無濟於事。 IzPack是一個文獻記載不充分,非常蠕動的野獸。
一切正常,程序放置在正確的目錄和開始菜單組中,我可以運行它。 此時唯一沒有發生的部分是注冊表編輯。
當確實使快捷面板工作時,我確實了解到必須將Shelllink
Dlls手動添加到%JAVA_HOME%\\bin
目錄中。 由於在文檔中沒有明確說明,並且IzPack安裝中不包含這些文件,因此我認為不需要它,但這是我最終使它起作用的唯一方法。 我將COIOSHelper
Dlls添加到了相同的位置,但是沒有任何改變。 我懷疑這與將Dlls包含在最終的jar安裝程序中有關,但是沒有有關如何確保正確發生的文檔。
install.xml
<installation version="1.0">
<info>
<appname>MyApp</appname>
<appversion>1.0.0</appversion>
<appsubpath>MyApp</appsubpath>
<javaversion>1.7</javaversion>
<authors>
<author name="ME" email="support@me.com"/>
</authors>
<url>http://www.me.com</url>
<run-privileged/>
</info>
<guiprefs resizable="no" width="480" height="360">
<laf name="looks">
<param name="variant" value="windows" />
<os family="windows" />
</laf>
</guiprefs>
<locale>
<langpack iso3="eng" />
</locale>
<resources>
<res id="shortcutSpec.xml" src="shortcutSpec.xml"/>
<res src="MyApp.ico" id="MyApp.ico"/>
<res src="MyLicense.txt" id="LicencePanel.licence"/>
</resources>
<natives>
<native type="izpack" name="ShellLink.dll"/>
<native type="izpack" name="ShellLink_x64.dll"/>
<native type="3rdparty" name="COIOSHelper.dll" stage="both">
<os family="windows"/>
</native>
<native type="3rdparty" name="COIOSHelper_x64.dll" stage="both">
<os family="windows"/>
</native>
</natives>
<listeners>
<listener classname="RegistryInstallerListener" stage="install"/>
<listener classname="RegistryUninstallerListener" stage="uninstall"/>
</listeners>
<panels>
<panel classname="CheckedHelloPanel" />
<panel classname="LicencePanel" />
<panel classname="TargetPanel" />
<panel classname="InstallPanel" />
<panel classname="ShortcutPanel" id="shortcutpanel" />
<panel classname="SimpleFinishPanel" />
</panels>
<packs>
<pack name="Core" required="yes" preselected="yes">
<description>The core files needed for correct operation of the MyApp Application</description>
<file src="myapp-1.0.0.jar" targetdir="$INSTALL_PATH"/>
<file src="MyApp.ico" targetdir="$INSTALL_PATH\images"/>
</pack>
</packs>
</installation>
您從哪里獲得COIOSHelper DLL? 這些似乎未包含在我的IzPack安裝中。 我不需要為ShellLink DLL做任何事情,它們就在那里工作。 還要注意的是,我發現ShellLink DLL的“本機”條目不能位於“本機”標記內。 如果我把它們放在那里,安裝程序就會中斷。 它們必須在“安裝”標簽下。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.