nw.js项目用nsis打包成一个exe文件的坑
nsis把nw.js整个项目编译成一个exe包,可以实现分发给客户时,可以给用户更好的体验,但是隐藏着一个坑。也可以说是nw.js本身存在的坑。由于nw.js是基于node.js和chromium的应用程序运行环境的。如果项目用到localstorage来实现部分缓存和自动登录功能实现,则作为浏览器的内核渲染页面,则用户安装应用后 必然会生成本地缓存。导致用户下次重装应用时,还是使用上一个安装包的缓存数据,因此需要在上一个应用卸载应用时或者安装新的应用时 把之前的用户缓存文件删除掉。因此需要nsis命令删除用户目录下的缓存删除。 RMDir /r "$PROFILE\AppData\Local\demoproject" RMDir删除文件夹,/r表示在当前文件夹路径下递归查找,而不是当前文件夹路径下文件为空时才能删除文件。$PROFILE表示当前用户目录下 ,AppData\Local\demoproject就是当前用户目录下缓存demoproject应用的缓存数据。详细nsi编译文件命令如下:
···sho
Section ""
;清空上次安装的用户缓存信息
RMDir /r "$PROFILE\AppData\Local\demoproject"
;将输出路径设置为安装目录
SetOutPath "$INSTDIR"
;ADD YOUR OWN FILES HERE...
File /r "demoproject"
;创建桌面快捷方式
CreateShortCut "$DESKTOP\demoproject.lnk" "$INSTDIR\demoproject\demoproject.exe" "" "$INSTDIR\demopr
nw.js项目用nsis打包成一个exe文件的坑相关推荐
- 用py2exe打包成一个exe文件
一.简介py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序. py2ex ...
- 使用vs2019和pyinstaller将py文件打包成一个exe文件(含图标),pyinstaller安装失败解决方案
1.什么是pyinstaller 参见这篇文章: https://gwj1314.blog.csdn.net/article/details/79775764 PyInstaller是一款可以把py解 ...
- 打包SWF和HTML,将多个swf打包成一个EXE文件
在制做一个flash时常常有文件种需导入其它swf文件的情况,这种情况使用flash player打包成EXE文件时,无法将附带的swf文件打进去,这给文件的复制带来了不便.如何将多个swf文件打成一 ...
- PyInstall的安装,使用,以及最后打包成一个exe文件
首先PyInstall安装 pip3 install pyinstaller -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirro ...
- 如何将cocos2d-x项目打包成一个.exe
今天在CSDN上看到了一片有趣的博文,没错,他还是关于cocos2d-x的,但不同之处是,这会正对的不是ios又或安卓,而是我们最熟悉的windows,他教会了我如何将一个cocos2d-x编译后产生 ...
- Python selenium —— 将你的自动化脚本打包成一个exe
写好了Python selenium脚本,到其他机器上运行,还得要在其他机器上也装一套Python的环境,尤其在你用了一些第三方库的时候,甚至还要顾及操作系统是32位还是64位,是不是很坑,如果能打成 ...
- winform把所有dll打包成一个exe
大家都知道做winform开发,是可以利用visual studio进行打包的,但是这种打包的方式需要双击安装,那么有没有什么方法,可以把winform程序打包成绿色版呢?当然,这里的"绿色 ...
- python打包成二进制文件_pyinstall python文件打包成二进制exe文件
pycharm + python3 + win7 1 pip install pyinstall (官网) 2 准备 .py 文件 3 具体例子 from PyQt5.QtWidgets impor ...
- 多个exe打包成一个exe安装程序,安装后可一键启动多个服务
博客帮助我解决了很多问题,于是想把自己遇到的问题记录下来希望对他人有所帮助.有些帖子写得很是简单,一旦忽略了某个关键细节,就可能看不懂了,就要花费更多的时间才能解决问题或者另寻良方,所以我自己尽可能写 ...
最新文章
- 使用 electron-updater 自动更新应用
- 线上办公室 x 音视频会议最佳实践
- 如何为项目配置网关并且测试、实战
- matlab求一个方程组的系数矩阵,【求解】matlab求解非齐次方程组,但是系数矩阵是复数,求帮忙...
- JavaScript实现isPowerOfTwo算法(附完整源码)
- Vim 的高级用法配置
- js aop 拦载实现
- css二级菜单会然下面遮住_JavaScript实现下拉二级菜单详解
- vs code linux opencv,ubuntu+vscode 测试运行opencv
- ubuntu下安装django
- sqlserver 全文索引
- java细节_java细节知识
- java time 赋予时间_java.time.OffsetTime
- git使用.gitignore 忽略文件和忽略已经提交过的文件
- 50个常用mysql语句_50个常用的sql语句
- Cisco1721的简单配置
- display:inline-block 间隙
- 栈的应用1——超级计算器(中缀与后缀表达式)C语言
- Spring MVC - 拦截器实现 和 用户登陆例子
- Hadoop集群报错解决及hadoop fs 的常用操作