在Linux服务器上构建windows 7z SelF-eXtracting安装程序,如何更改exe图标?

时间:2013-11-13 02:09:08

标签: linux windows ubuntu 7zip

我的服务器是Ubuntu Server 12.04,我的客户端都使用Windows。

所以我想为他们构建一些Windows安装程序。

最后,我发现7z SelF-eXtracting安装程序对我来说非常容易。 Ubuntu有p7zip,它可以制作7z压缩文件,并且可以使用sfx模块通过这个命令制作windows 7z SelF-eXtracting安装程序:cat 7zSD.sfx installer_config installer.7z > installer.exe

我下载了7zip额外软件包,以便在http://downloads.sourceforge.net/sevenzip/7z920_extra.7z

使用其sfx模块

一切都好。唯一的问题是如何更改exe图标?我希望我的安装程序有一些不同的图标。使用脚本或某些cli软件更好,因为我的服务器没有X而且我想要批量操作。

谢谢。

2 个答案:

答案 0 :(得分:1)

将数据连接在一起很少会生成有效的PE可执行文件,除非您修改PE标头以考虑额外的数据。它实际上可能正在“正常工作”,因为Windows版本在加载文件时是宽容的,而7z可执行文件从磁盘加载有效负载,但事实仍然是您的PE可执行文件无效,可能无法在某些Windows版本上运行。

好消息是,通过使用资源编译器,您将解决您的问题:图标和有效负载都是资源,因此您可以拥有一个“空”7z可执行文件,您可以添加图标和数据使用资源编译器。

我从来没有尝试在Unix上编译Windows可执行文件,但如果我愿意,我会看看Wine,IIRC它有一个可以在Unix上运行的资源编译器。

更新:http://www.winehq.org/docs/winelib-guide/wrc

答案 1 :(得分:0)

我不认为,这是可能的。

我建议使用nsis。