如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留链接信息。

upx是给exe加壳的软件,但是它本身也有非常好的压缩功能。所以,也可以用来给exe减肥。而我们的electron生成的exe,总体一般都是100多兆。即使你的js代码就写了两行,也会是这个效果。这对于我们的用户体验上来说,简直是个灾难。那么,对于electron来说,upx还是有一定的价值的。

本文的实践基础是electron的exe,对于其他的exe也有一定的借鉴意义。

upx下载

https://github.com/upx/upx/releases ,我们下载最新版的w版,截至本文写作时为止,这个答案就是: upx394w.zip 这个版本。

利用upx给electron的exe减肥效果对比 - 0555
利用upx给electron的exe减肥效果对比(图9-1)

利用upx给electron的exe减肥效果对比 - 056
利用upx给electron的exe减肥效果对比(图9-2)

命令行进行压缩

<upx.exe的路径> <要压缩的exe或者dll>

注意如果路径中有空格的话,要用引号引起来即可。

对于解压版,压缩效果明显

我们先压缩主程序和node.dll这两个最大的文件,效果非常明显。大家看截图。

利用upx给electron的exe减肥效果对比 - 057
利用upx给electron的exe减肥效果对比(图9-3)

利用upx给electron的exe减肥效果对比 - 059
利用upx给electron的exe减肥效果对比(图9-4)

55M的主程序,压缩完是18.7M。

利用upx给electron的exe减肥效果对比 - 060
利用upx给electron的exe减肥效果对比(图9-5)

14M的node.dll,压缩完是5.5M。

利用upx给electron的exe减肥效果对比 - 081
利用upx给electron的exe减肥效果对比(图9-6)

利用upx给electron的exe减肥效果对比 - 082
利用upx给electron的exe减肥效果对比(图9-7)

整体来说,从105M变成了61.9M。

对于inno安装版,压缩效果没有,甚至反作用

正常的inno安装包,是31M。

如果我们对主程序体先upx,然后再用innosetup打包。那么,upx 不但没有效果,而且有反作用。先upx再inno的exe,体积反而更大(33.5M)。大家看一下对比图,左边是没有使用任何upx,直接inno得到的效果;

利用upx给electron的exe减肥效果对比 - 070
利用upx给electron的exe减肥效果对比(图9-8)

苏南大叔进一步实验:我们对上述较小的安装包(没有任何加工直接inno),再次使用upx的话,upx 更没有任何压缩效果,exe体积不变。

利用upx给electron的exe减肥效果对比 - 072
利用upx给electron的exe减肥效果对比(图9-9)

结语

通过上面的截图对比,我们可以知道,upx减肥是有效果的。但是这个效果并不是万能的。是否使用upx来对electron的exe程序减肥,仁者见仁智者见智了。聪明的你,必定有自己的决定。

更多electron的相关资讯,请点击苏南大叔的博客。https://newsn.net/tag/electron/

 【源码】代码片段及相关软件点此获取

 【electron】秘籍文章入口,仅传授于有缘之人   electron    innosetup

本站的忠实读者小伙伴,正在阅读下面这些文章:

欢迎转载传播本篇原创文章,转载请保留链接及作者信息。
欢迎指正文字或逻辑错误,将会择优在文末列出您的信息。
本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
未经许可,规模化镜像抄袭本站内容的行为,将会根据有关法律法规进行维权。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。

苏南大叔需要你的支持

感谢您的打赏,让我更有动力,将更多精彩教程文章,呈现给大家!谢谢!