一、如果用nw.js 来开发桌面应用

首先到Nw.js中文网下载软件:

https://nwjs.org.cn/download.html

下载下来进行解压就可以了,绿色的免安装的,整个目录结果是这样的:

我们可以创建的最简单的桌面应用,首先创建一个名为 app的应用目录:package.json是必须的

这里需要注意的是:

E:\fyz\nwjs\nwjs-v0.37.1-win-x64 这个是nw.js 的根目录
E:\fyz\nwjs\nwjs-v0.37.1-win-x64\app这个是包含开发源码的工作目录

二、如何开发生成一个可执行的.exe

进入到工作目录 app 将里面的文件进行 .zip的压缩:

压缩完成后的:app.zip

将压缩后的app.zip改名为 app.nw

将app.nw文件放到项目的根目录:

然后打开cmd,而不是powerShell,powerShell和cmd应该是一样的,但是这里如果用 Powershell 的话打包不成功,而且会报错:

打开 cmd :

切换到 E 盘 下的 项目的根目录:

在此目录下运行:copy /b nw.exe+app.nw app.exe

copy /b nw.exe+app.nw app.exe

出现这样就表示成功了

看到我们的根目录就出现了一个 app.exe 的文件:

这样一个最简单的桌面应用就创建成功啦!

三、简化操作

整体的这个流程,要压缩为zip的文件,要改名为 nw 文件,还要打开 cmd 执行命令,显然太麻烦了,如何简便这个操作流程呢?

新建一个 builder.bat 文件:

在里面写入:

@echo off
set root_path=E:\fyz\nwjs\nwjs-v0.37.1-win-x64\
set work_path=E:\fyz\nwjs\nwjs-v0.37.1-win-x64\app\
E:
cd %work_path%
"E:\fyz\winrar\WinRAR.exe" a -r -ep1 %root_path%app.zip %work_path%
echo ----------压缩包app.zip生成成功
echo ----------开始创建app.exe
cd %root_path%
copy /b nw.exe+app.zip app.exe
echo -----------创建app.exe成功
del app.zip
echo ----------删除app.zip成功
pause

这样,每次只需要双击这个文件就能够生成应用程序。

具体压缩命令参考:

https://jingyan.baidu.com/article/f79b7cb37ad82d9145023e61.html

四、如何打包进行发布

使用上述命令生成 .exe 的可执行文件后,将整个目录复制到另外一个目录下:然后把 app文件夹,nw.exe,builder.bat这三个文件给删除。

这样一个干净的应用程序就完成了。那么这个程序如何给到用户手里,有三个方式:
1.直接RAR打包,发给用户,这也就是个绿色版,无需安装。
2.我们用软件工具 Enigma Virtual Box 封包,用这个工具可以把整个应用程序文件夹生成一个单独的app.exe, 用户直接双击就能运行,这个也是无需安装的。具体的使用方法请参加

https://www.toolmao.com/nwjs-helloworld

但这个工具有一个缺点就是打包的程序太大,100M吧,及时在选项里选择压缩,出来也是70M+,而且更新程序也是个问题。

3.用软件工具innosetup,下载地址:

http://www.jrsoftware.org/isdl.php,

这个工具会生成一个安装版本,而且安装文件才 50M+,很合适,推荐这种方法,具体的使用方法请参加

https://blog.csdn.net/miaodichiyou/article/details/81668431?utm_source=blogxgwz2x

这里顺便提一下,NW.exe 的默认图标通过配置文件是无法修改的,需要用工具 Resource Hacker 来修改。

这样一个完整的打包过程就完成啦。

参考
[1]: NW.js 官网 :https://nwjs.io/
[2]: NW.js中文网:https://nwjs.org.cn/

参考博客:

https://blog.csdn.net/u013288292/article/details/83028282

nw.js---创建一个hello word的方法的更多相关文章

  1. 用Backbone.js创建一个联系人管理系统(五)

    原文: Build a Contacts Manager Using Backbone.js: Part 5 这是这系列教程最后一部分了. 之前所有的增删改都在前端完成. 这部分我们要把Contact ...

  2. 用Backbone.js创建一个联系人管理系统(四)

    原文: Build a Contacts Manager Using Backbone.js: Part 4 这一系列教程的第四部分,教我们如何完成对已经存在的Contacts进行编辑和保存. 本教程 ...

  3. 用node-webkit(NW.js)创建桌面程序

    以往写windows桌面程序需要用MFC.C#之类的技术,那么如果你只会web开发技术呢?或者说你有一个网站,但是你想把你的网站打包成一个桌面应用程序,该如何做呢? 答案就是用node-webkit这 ...

  4. 用Backbone.js创建一个联系人管理系统(一)

    原文 Build a Contacts Manager Using Backbone.js: Part 1 在这个教程里我们将会使用Backbone.js,Underscore.js,JQuery创建 ...

  5. 使用 SVG 和 JS 创建一个由星形变心形的动画

    序言:首先,这是一篇学习 SVG 及 JS 动画不可多得的优秀文章.我非常喜欢 Ana Tudor 写的教程.在她的教程中有大量使用 SVG 制作的图解以及实时交互 DEMO,可以说教程的所有细枝末节 ...

  6. 用three.js创建一个简易的天空盒

    本文创建的天空盒是用六张图片来创建的.笔者会论述两种方法来创建,都是最简单基本的方法,不涉及着色器的使用.一种是创建一个盒子,然后将图片作为盒子6个面的纹理贴上来创建.另一种则是简单的将纹理作为场景的 ...

  7. NW.js打包一个桌面应用

    1.安装nw(可以到官网:https://nwjs.io下载) npm install nw -g 2.创建一个最最简单的nw应用 在nwjs文件夹中 新建index.html和package.jso ...

  8. JS创建类以及类的方法(StringBuffeer类)

    创建StringBuffer类以及toString,append()方法 //创建一个StringBuffer类 ,此类有两个方法:一个是append方法一个是toString方法 function ...

  9. JS 创建元素的三种方法

    1.动态创建元素一 document.write() 例如向页面中输出一个 li 标签 <pre class="html" name="code"> ...

随机推荐

  1. 【linux】【tomcat】linux下定时重启tomcat

    步骤: 一.创建脚本文件,本脚本文件用于停止,重启tomcat运行的java进程,并设置脚本文件权限 1.新建脚本文件tomcat.sh [注意文件创建的路径] [查看当前路径的命令:   pwd] ...

  2. ninja-build环境安装

    ninja是一个小型构建系统,专注于速度,和常用的make类似,有一些软件就是基于ninja编译构建的,比如clickhouse数据库就需要依赖ninja,因为最近在研究clickhouse,需要依赖 ...

  3. gtest环境安装

    gtest全称Google Test,是Google的C++测试框架,有很多优秀的软件都会依赖这个环境编译或者在开发中也会用到,gtest的编译非常简单,下面简单说明一下安装过程. gtest git ...

  4. fopen和fopen_s用法的比较

    open和fopen_s用法的比较 fopen 和 fopen_s           fopen用法: fp = fopen(filename,"w").         fop ...

  5. 【问题与解决】Mac OS通过 npm 安装 React Native 报错(checkPermissions Missing write access to /usr/local/lib/node_modules)

    报错情况: 当Mac OS通过 npm 安装 React Native 报错,警告文字为:checkPermissions Missing write access to /usr/local/lib ...

  6. POSTMAN发送WebService接口

    WebService是一种跨编程语言和跨操作系统平台的远程调用技术 http://www.oorsprong.org/websamples.countryinfo/countryinfoservice ...

  7. 【GMT43智能液晶模块】例程十二:SDIO实验——读取SD卡信息

    实验原理: STM32F429上带有SDIO控制器,GMT43液晶模块上将SDIO连接到TF卡座上.本 实验将Micro SD卡插入TF卡座上即可.SD卡中可存放液晶显示模块需要显示的图片.字 库等资 ...

  8. ffmpeg安装步骤

    首先要安装各种解码器 1.lame lame-3.99.5.tar.gz Url:http://sourceforge.net/project/showfiles.php?group_id=290&a ...

  9. perl控制流介绍(if条件,while,for循环,foreach)

    1. 语句块:{ }之间的部分即为BLOCK语句块. 2. 条件语句:if ( expression )  BLOCK; if ( expression )     BLOCK1else BLOCK2 ...

  10. Windows 10 Version 1803 (Updated March 2018) MSDN 镜像下载

    微软已按先前预期于美国时间 2018 年 4 月 30 日正式向所有用户发布了 Windows 10 Version 1803 (Updated March 2018) 的 ISO 镜像下载,按微软官 ...