所以目前我的用户下载一个zipfile,解压缩然后运行setup.exe - 我希望他们只需点击一下即可.使用http://www.wikihow.com/Use-7Zip-to-Create-Self-Extracting-excutables我可以创建一个自解压的exe,但它实际上并没有运行安装程序.
从这个问题
为什么7zip在制作SFX安装程序时忽略我的InstallPath?
看来我还需要一个.sfx文件,所以我从另一个问题复制并创建了一个包含以下内容的文件
;!@Install@!UTF-8!
InstallPath="C:\\test"
GUIMode="2"
RunProgram="setup.exe"
;!@InstallEnd@!
Run Code Online (Sandbox Code Playgroud)
并调用setup.sfx并将其与其他文件一起存档
setup.ini
setup.exe
setup.ico
install.jar
JVM32 (folder)
Run Code Online (Sandbox Code Playgroud)
但它没有任何区别,我还需要做些什么.
补充问题,我也有WinRar,它是否影响最终用户体验我是否使用7Zip或Winrar?
我无法弄清楚7zip提供的7z.sfx文件和开发人员网站的可下载7zsd.sfx之间的区别是什么,该网站没有与7zip捆绑在一起.7z.sfx似乎不尊重我的请求,包括我为它创建的config.txt文件,但7zsd.sfx包含方法完美无缺.
7zip附带7z.sfx捆绑.程序文件目录中的应用程序history.txt显示7zsd.sfx曾在2005年与7zip捆绑在一起.7z.sfx在history.txt文件中也被称为"未压缩的SFX".
这是使用的配置:
;!@Install@!UTF-8!
InstallPath="C:\\ProgramData\\IT"
GUIMode="2"
;!@InstallEnd@!
Run Code Online (Sandbox Code Playgroud)
这是我正在使用的语法和响应行为:
C:\Users\<me>\Desktop\Updater\Recorder>copy /b 7z.sfx + config.txt + "RecorderVer0.0.0.4".7z "RecorderVer0.0.0.4".exe
7z.sfx
config.txt
RecorderVer0.0.0.4.7z
1 file(s) copied.
Run Code Online (Sandbox Code Playgroud)
使用7zsd.sfx会发生相同的响应,表明确实正在使用包含的配置文件.但是,当执行7z.sfx创建的RecorderVer0.0.0.4".exe时,会提示安装7z存档内容的提示.使用7zsd.sfx创建的RecorderVer0.0.0.4.exe版本将文件指向配置集位置没有任何所需的提示.
据我所知7z.sfx不能通过开发者的网站下载,但我可能错了.他的官方网页已不再可用,但互联网档案馆提供的信息应该足够.
我已经使用jlink为我的Java应用程序创建了运行时映像,并且希望能够将我的应用程序作为可执行文件发布到不同的平台。
理想情况下,它将是一个文件,用户可以双击它并启动应用程序,而无需安装任何程序。
目前是否有一个好方法可以做到这一点?