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 ...
随机推荐
- zoj2676 Network Wars(0-1分数规划,最大流模板)
Network Wars 07年胡伯涛的论文上的题:http://wenku.baidu.com/view/87ecda38376baf1ffc4fad25.html 代码: #include < ...
- pytest 失败用例重试
https://www.cnblogs.com/jinzhuduoduo/articles/7017405.html http://www.lxway.com/445949491.htm https: ...
- 替换文件里的相关单词(一)之文件类型为txt
首先说一下详细的实现思路: 第一步:我们须要获取要改动文件的信息,我们能够通过文件的路径来获取文件的FileInputStream,即文件的输入流,然后调用InputStreamReader读取文件输 ...
- Git是什么?
Git是目前世界上最先进的分布式版本控制系统(没有之一). Git有什么特点?简单来说就是:高端大气上档次! 那什么是版本控制系统? 如果你用Microsoft Word写过长篇大论,那你一定有这样的 ...
- poj2342 Anniversary party (树形dp)
poj2342 Anniversary party (树形dp) Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9128 ...
- 使用匿名类型做为ComboBox的DataSource
使用匿名类型做为ComboBox的DataSource ArrayList list = new ArrayList(); list.Add(new { id = " ...
- C++_homework_EraseComment
顾名思义就是删除程序中的注释,不清楚fsm的机制,完全是自己的思路做. 开头先读取一个字符确定是否到文件结尾,如果读取成功,是换行的话就换行,并继续读取,不是的话,用putback放回缓冲区,并整行读 ...
- 学习XOR
//f(x;W,c,w,b)=w*max{0, W*x+c}+b #include <iostream>#include <vector>#include <algori ...
- 84. ExtJS下页面显示中文乱码问题
转自:https://blog.csdn.net/wenminhao/article/details/51198981 最近在学校extjs是,使用js脚本显示中文在html页面中时,中午出现了乱码的 ...
- POJ 1659 Havel-Hakimi定理
关于题意和Havel-Hakimi定理,可以看看http://blog.csdn.net/wangjian8006/article/details/7974845 讲得挺好的. 我就直接粘过来了 [ ...