NSIS脚本实现卸载时保留文件夹策略
4星 · 超过85%的资源 需积分: 50 122 浏览量
更新于2024-09-15
1
收藏 3KB TXT 举报
NSIS(Nullsoft Scriptable Install System)是一种强大的Windows安装脚本语言,用于创建自定义的安装程序。在这个特定的NSIS脚本中,主要关注的是如何在卸载过程中进行文件管理和保留特定文件夹的功能。
1. **逻辑库包含**:
首先,脚本包含了"LogicLib.nsh"库,这是一个逻辑操作的集合,可能包含了处理安装和卸载逻辑所需的基本函数。
2. **日志设置**:
Section "-LogSetOn"部分设置了日志记录,这使得在安装和卸载过程中,对操作过程有详细记录,以便于调试和了解具体执行情况。
3. **卸载过程中的文件管理**:
!macroDelFileByLogLogFile 是一个自定义宏,用于根据安装日志文件(`$LogFile`)删除指定的文件。它检查文件是否存在,如果存在,则调用un.DelFileByLog 函数进行安全删除,以避免误删重要文件。
4. **卸载步骤**:
- 删除应用图标组中的应用程序快捷方式:`Delete "$INSTDIR\${PRODUCT_NAME}.url"`
- 移除安装日志文件:`Delete "$INSTDIR\install.log"`
- 清理开始菜单:`RMDir "$SMPROGRAMS\$ICONS_GROUP"`,这将删除产品在开始菜单中的图标。
5. **自定义函数**:
`un.DelFileByLog` 函数是关键部分,它负责根据日志文件中的信息(如"File:wrote"、"CreateShortCut:out:"等)定位和删除文件。通过逐行读取日志文件,判断是否是需要删除的文件,并确保只删除非关键文件。
6. **特殊情况处理**:
在删除文件时,脚本特别提到需要谨慎对待 `/r` 参数,可能意味着某些情况下需要递归删除文件夹,或者在删除前进行额外的检查,以防止意外删除。
这个NSIS脚本在卸载过程中展示了如何使用日志记录、自定义宏以及对特定文件和文件夹的处理策略,以确保安装和卸载的完整性,同时尽可能地保留用户可能希望保留的文件或数据。对于IT专业人士来说,理解和调整这样的脚本可以帮助优化安装体验并减少潜在的问题。
2020-08-03 上传
2008-04-18 上传
2024-10-16 上传
2023-05-24 上传
2012-04-26 上传
2019-03-28 上传
疯狂的程序员
- 粉丝: 2
- 资源: 8
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码