当前位置: 首页 > news >正文

scoop bucket qq脚本分析(qq绿色安装包制作)

url字段

以qq.json为例,其对应的scoop配置文件在$env:scoop\buckets\extras\bucket\qq.json
其中的url字段

"url":"https://webcdn.m.qq.com/spcmgr/download/QQ9.7.17.29230.exe#/dl.7z"

为qq安装包下载地址,后缀#/dl.7z为自行添加,表明该安装包的解压方式使用7z,解压命令7z.exe x qq.exe -o,解压默认目录为$env:scoop/apps/qq/9.7.17.29230/

QQ9.7.17.29230.exe安装包内容解构及其绿色化

解压之后调用"installer"字段,其中的执行步骤如下:

  1. 删除.rsrc目录之外的所有文件
  2. 使用7z解压其中的$dir\.rsrc\2052\MSI\101\Files到当前目录。Files中包含bin\qq.exe等重要可执行文件。
  3. 使用7z解压其中的$dir\.rsrc\2052\MSI\102到临时目录,其中有重要的系统级别动态库dll
  4. 拷贝上一步中的动态库dll到bin目录中,以便qq.exe寻找到库。
  5. 使用7z解压其中的TXSSOSetup.exe,该程序用于网页的qq快速登陆
  6. 清理当前目录

附qq.json内容如下

{"version": "9.7.17.29230","description": "An instant messaging tool that gives you the best way to keep in touch with your friends and family.","homepage": "https://im.qq.com","license": {"identifier": "Proprietary","url": "https://ti.qq.com/agreement/index.html"},"notes": ["Scoop doesn't persist your QQ data, by default they are stored in: ","'%UserProfile%\\Documents\\Tencent Files'.","Files produced at runtime leaves in '%AppData%\\Tencent'."],"url": "https://webcdn.m.qq.com/spcmgr/download/QQ9.7.17.29230.exe#/dl.7z","hash": "5ae1949f7ba4c65bf82ee53c55053ad91cb524150a93bf1d2035e530c54757c9","shortcuts": [["Bin\\QQScLauncher.exe","QQ"]],"installer": {"script": ["Get-Item \"$dir\\*\" -Exclude .rsrc | Remove-Item","Expand-7zipArchive \"$dir\\.rsrc\\2052\\MSI\\101\" \"$dir\" -ExtractDir 'Files'","Expand-7zipArchive \"$dir\\.rsrc\\2052\\MSI\\102\" \"$dir\\temp\"","'vcruntime140.dll', 'msvcp140.dll', 'msvcr100.dll', 'vcomp140.dll', 'msvcp100.dll' | ForEach-Object {","  Move-Item \"$dir\\temp\\$_\" \"$dir\\Bin\\\"","}","Expand-7zipArchive \"$dir\\temp\\TXSSO\\TXSSOSetup.exe\" \"$dir\\Bin\\TXSSO\" -ExtractDir 'TXSSO'","Remove-Item \"$dir\\.rsrc\", \"$dir\\temp\" -Recurse"]},"checkver": {"url": "https://pc.qq.com/detail/2/detail_2.html","regex": "QQ([\\d.]+).exe"},"autoupdate": {"url": "https://webcdn.m.qq.com/spcmgr/download/QQ$version.exe#/dl.7z"}
}
http://www.lryc.cn/news/242933.html

相关文章:

  • Elasticsearch:将最大内积引入 Lucene
  • YOLOV7主干改进,使用fasternet轻量化改进主干(完整教程)
  • DALSA.SaperaLT.SapClassBasic无法加载,试图加载格式不正确的程序,c#
  • 设计模式-创建型模式-工厂方法模式
  • 科研/比赛必备工具及系列笔记集合
  • 萨科微举办工作交流和业务分享会
  • 一篇文章让你入门python集合和字典
  • 各种工具的快捷键或命令
  • 【Web】preg_match绕过相关例题wp
  • XSLVGL2.0 User Manual 主题管理器(v2.0)
  • visionOS空间计算实战开发教程Day 2 使用RealityKit显示3D素材
  • 【图解系列】一张图带你了解 DevOps 生态工具
  • Oracle的安装及使用流程
  • CMakeLists.txt:打印find_package变量;判断库文件路径设定是否正确;install文件设置
  • Mysql 解决Invalid default value for ‘created_at‘
  • Linux【安全 01】云服务器主机安全加固(修改SSHD端口、禁用登陆失败的IP地址、使用密钥登录)
  • nginx的n种用法(nginx安装+正向代理+反向代理+透明代理+负载均衡+静态服务器)
  • lvm 扩容根分区失败记录
  • 【机器学习】聚类(一):原型聚类:K-means聚类
  • 2824. 统计和小于目标的下标对数目 --力扣 --JAVA
  • github上不去
  • 图像处理Scharr 算子
  • JAVA 面向对象编程
  • 第十六章 解读深度学习中Batch Size、Iterations和Epochs(工具)
  • 基于UI交互意图理解的异常检测方法
  • ArgoWorkflow教程(一)---DevOps 另一选择?云原生 CICD: ArgoWorkflow 初体验
  • 数据结构与算法编程题24
  • springsecurity6配置四
  • OpenCV简介及安装
  • Unity调用dll踩坑记