node-webkit开发桌面应用 :将html打包成exe运行,好处一客户不用单独再安装chrome,,浏览器设置可封装,比如刷新缓存这些
是用c++写成,可直接访问本地资源,界面可以加菜单。
WebKit负责HTML5 UI 相关的部分,而Node.js负责本地的API接口,比如文件系统,网络,设备等。
使用:编辑package.json 放在nw根目录下,用enigma virtual box打包使用
作者相关:http://www.csdn.net/article/2014-01-08/2818066-Node-Webkit
清除缓存:C:UsersgoodasongAppDataLocalLvShou,lvshou是指在package.json指定的name
中文文档
用Enigma Virtual打包时,dll选择:
nw.pak:必需,是javascript库
icudtl.dat:必需,是网络库
ffmpegsumo.dll:媒体库,比如作用video这些需有此dll支持
libEGL.dll:webgl使用
libGLESv2.dll:gpu使用
d3dcompiler_47.dll:调试webgl使用
pdf.dll
Enigma Virtual Box:将多个文件如dll,exe打包成一个文件直接可以运行,可以写注册表
遇到的问题:
系统要使用flash,而显示的效果是有些电脑flash显示正常,有些却不能。
通过阅读wiki知,需要增加”plugin”: true,默认是不加载插件的,此解决一,但还是会有flash不显示的电脑,
在package.json所在目录增加plugins,里面放入flash插件NPSWF32_11_8_800_168.dll,所有电脑都可显示flash。
原因:是在”plugin”: true后,NW会去系统目录找flash插件,因电脑安装原因,可能flash插件不能固定的地方,然后它会去package.josn所在的plugins中查找,就是我们放plugins目录的的所在。
package.json:
{
“main”: “http://xxxxx.xx/login.aspx” ,
“name”: “LvShou”,
“version”: “0.1”,
“window”: {
“title”: “微商管理系统V3.0 Powered By asong”,
“toolbar”: false,
“frame”: true,
“width”: 1024,
“height”: 768,
“position”: “center”,
“resizable”: true,
“icon”: “key.png”,
“show”: true
},
“webkit”: {
“plugin”: true
}
}
https://github.com/nwjs/nw.js/wiki/Third-party-browser-plugins