一、使用node开发应用程序,通常采用express框架进行功能扩展,当系统开发完成后,直接的方式就是采用gulp压缩后,在服务端运行node app.js命令执行,to C的系统这样开发部署没有问题。
二、而在to B,to G的项目中,采用源码的方式运行,一方面部署不太友好,需要拷贝的文件很多,另外,对于代码的保护和产权控制,比较弱。因此需要对nodejs+express工程打包封装。
三、最常用的打包方式是使用pkg,之前的文章有具体介绍,这里不做展开。本篇主要解决采用pkg打包后生成exe安装包,默认的图标是node的绿色六边形,一眼看去就是nodejs的应用程序。通常公司产品化的软件系统,需要标识为公司的logo和版权信息。最早的时候,使用第三方软件,对exe里面ico资源进行修改调整,而随着nodejs版本升级,对应的pkg更新后,修改后的exe无法运行,报错,分析原因,可能是exe内部二进制结构发生了变化,导致无法使用。
四、查阅资料,网上提供了rcedit和resedit两个开源库进行调整,以下介绍具体的流程和遇到的坑。
1)首先,安装resedit
npm install resedit --save
2)在resedit中,type:‘module’,即只支持 module import方式加载,而express工程大部分使用