NW.js构建PC收银端安装程序的指南
1.首先下载nw.js的SDK:
https://nwjs.org.cn/download.html
2.SDK目录下新建myapp文件夹:

3.myapp文件夹内新建package.json文件:

4.package.json内容如下:

5.在myapp文件夹下执行 npm install 安装依赖,注意此时需要将C++依赖编译成node依赖:
1.首先要保证电脑已安装python2.7 和 VS

2.还要全局安装 nw-gyp
npm install -g nw-gyp
3.然后执行以下命令,设置各个环境变量目录等,让依赖按vs2015编译
set PYTHON=C:\Users\NALA\.windows-build-tools\python27\python.exeset npm_config_target=0.31.4set npm_config_arch=x64set npm_config_runtime=node-webkitset npm_config_build_from_source=trueset npm_config_node_gyp=C:\Users\NALA\AppData\Roaming\npm\node_modules\nw-gyp\bin\nw-gyp.jsnpm install --msvs_version=2015 sp-printer |
(sp-printer模块 是我写的打印机组件,哈哈哈)
6.在myapp文件夹下将所有文件打包: myapp.zip
7.将myapp.zip剪切到SDK文件夹根目录,cmd cd到根目录下,执行命令:
copy /b nw.exe+myapp.zip mzt.exe
打包成mzt.exe可执行文件
8.确保已安装Inno Setup 软件,InnoSetup是一款Windows免费的安装制作软件,可以将我们整个程序制作成一个安装程序。
- 打开Inno Setup,新建一个脚本向导:

- 填写相关信息后,继续下一步:


- 到了这一步,非常要注意:
- 可执行文件,选择SDK文件夹内的mzt.exe

- 其他应用程序文件,选择添加文件,
1.先全选sdk内所有文件;
2.然后用ctrl键+鼠标左键,点选来移除:文件夹、mzt.exe、nw.exe(这些文件不需导入),最后点击打开,导入这些文件。

3. 最后点击添加目录,刚才把文件夹移除了,现在把文件夹导入,因为有区别,所以分开操作。

4.点击“是”,包含子目录。
5.点击选择刚导入的文件夹,再点击编辑,在目标子目录中,输入和文件夹一样的名称,这是确保生成的安装程序,在用户安装时候把文件夹内容正确安装在这些目标子目录下,否则是默认安装在安装程序的根目录下。

6.重复3~5的操作,将SDK内其他的文件夹都导入进来,并设置好目标子目录。
- 文件夹都导入后,点击下一步



- 这步是配置安装输出目录及安装程序信息,图标可以自己找软件做一个。安装密码一般不需要。


- 点击完成,脚本向导配置结束。

- 最后显示的配置内容,其他的信息参数都可以再次修改,修改后记得点保存

- 点击构建,编译,开始生成安装程序了


- 稍等一会,编译完成,打开安装程序输出目录,发现安装程序已经生成了。

9.点击安装体验一下吧,至此构建任务全部结束了!
NW.js构建PC收银端安装程序的指南的更多相关文章
- NW.js构建桌面应用
最近要做个桌面的应用,用起来也方便.找了一圈发现NW.js挺容易上手,分享给大家. NW.js 官网https://nwjs.io/ 1.下载适合当前版本的js [这里下载的SDK版本,方便后续调试] ...
- JS判断PC和移动端设备
1.方法一 function IsPC() { var userAgentInfo = navigator.userAgent; var Agents = ["Android", ...
- 使用nw.js将html项目打包为桌面程序
首先需要确保电脑已经布置好node.js环境 1.下载并全局安装nw.js npm install nw -g 2.安装nw-builder模块 npm install nw-builder -g 3 ...
- JS判断PC还是移动端打开网页
最近在做移动端网站,也需兼容PC端.还没找到更好的方法,只能用javascr判断用户是在PC端打开还是移动端打开. JS判断 var isPC = function (){ var userAg ...
- 原生js获取pc和移动端屏幕宽、高的方法
pc端: var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; ...
- js判断pc还是移动端
if (!/windows phone|iphone|android/ig.test(window.navigator.userAgent)) { //pc }else{ //h5 }
- angular打包(二):nw.js
1 npm build 把ng编译出dist 2 单独写一个package.json 放在dist文件夹里. { "name": "app", "ma ...
- svn服务端安装、迁移教程、Eclipse切换svn连接库
svn服务端安装.迁移教程.Eclipse切换svn连接库 安装教程 1.下载svn服务端安装程序 2.运行程序,安装 这里端口号根据自己定义,避免与其他程序冲突 到这里就安装完成 迁移教程 这里举例 ...
- c/s端测试——nw.js篇(selenium工具)
最近在为兄弟部门开发自动化测试工具. 然后才知道现在竟然有JS工具可以把JS打包成cs端程序了,太牛了,js发展是真快.并且还是跨平台的,mac.windows.linux都支持. 当然,今天不是说n ...
随机推荐
- Spring Boot 内嵌容器 Tomcat / Undertow / Jetty 优雅停机实现
Spring Boot 内嵌容器 Tomcat / Undertow / Jetty 优雅停机实现 Anoyi 精讲JAVA 精讲JAVA 微信号 toooooooozi 功能介绍 讲解java深层次 ...
- 【Developer Log】ProGuard扰码可执行JAR包
在项目上线之前需要通过ProGuard来对java的class进行混淆,以避免反编译方式,来保护自己的代码.ProGuard网上有很多资料,可以参考:http://blog.csdn.net/zhan ...
- PatentTips - Zero voltage processor sleep state
BACKGROUND Embodiments of the invention relate to the field of electronic systems and power manageme ...
- spring入门笔记
这是我自己学习韩顺平老师spring视频的笔记,个人认为初学spring的韩顺平老师的讲的很好,比较通俗易懂,资源地址我已经给了,可以自己配合视频看.主要介绍了ioc和aop,这也是spring框架最 ...
- redo allocation latch redo copy latch
这两个latch 是干什么的一直有点迷糊,刚才上网查了一下,总结如下: redo allocation latch 在Log Buffer中分配内存空间时需要获取Redo allocation lat ...
- ubuntu 关于sublime text3的一些应用
安装 如今能够通过ppa的方法来安装sublime text3 了,个人感觉就是有有点儿慢,毕竟要update一下. sudo add-apt-repository ppa:webupd8team/s ...
- Office 365 的公共网站的一些限制及解决的办法
当前的SharePoint Online版本是基于SharePoint 2013的,但是很多功能确被阉割掉了. 下面主要列出Office 365公共网站被限制的功能,以及可绕过的解决方案: 内容类型 ...
- ASP原码加密工具介绍
ASP原码加密工具介绍 总是会有非常多方法暴露ASP的原程序.造成数据库的password 路径都能够轻易被其它人搞到,所以对ASP程序实行加密处理是个不错的解决方法.以下来介绍一个工具假设大家感兴趣 ...
- 如何更改iTunes备份地址(修改iphone ipad 备份地址) itunes文件目录修改方法 【亲测有效,附带原理说明】
前言 C盘空间有限,但是iTunes就是那么龌龊,只能把手机备份存到C盘.那么怎么才能把备份文件存到其他分区的文件夹里面呢? 当时我想先看看度娘,看看有没有现成的! 结果 nnd!! 我看了一大堆相关 ...
- C++虚函数默认实参的注意事项
我们都知道当成员函数是虚函数的时候,函数调用取决于调用函数的对象的类型而不是指针或者应用的类型.这就是C++中的多态. 那么一个虚函数的实参的缺省值是什么呢?例如如下代码: #include < ...