windows - 在 NSIS 中复制变量
问题描述
我正在使用 Wizou 的 nsisXML 来读取和写入 XML 配置文件。在卸载程序中,我想报告卸载了哪个版本。我的应用程序有多个部分,每个部分都有一个版本字符串。
这就是我报告的方式:
inetc::post '{"extra":{"app1":"$u_app1","app2":"$u_app2", "app3":"$u_app3", "app4":"$u_app4", "app5":"$u_app5" }}' /SILENT /HEADER "Content-Type: application/json" "https://myurl.com/uninstalled" /CONNECTTIMEOUT -5
nsisXML 的问题在于它写入 nsis 寄存器 $0、$1、$2、$3 等等。如果我从多个节点读取,则返回值存储在 $3 中,并且每次读取都会被覆盖。
nsisXML::create
nsisXML::load "conf.dont.touch.xml"
nsisXML::select "/data/app1"
nsisXML::getText ;stored in $3
nsisXML::select "/data/app2"
nsisXML::getText ;stored in $3
nsisXML::select "/data/app3"
nsisXML::getText ;stored in $3
nsisXML::select "/data/app4"
nsisXML::getText ;stored in $3
nsisXML::select "/data/app5"
nsisXML::getText ;stored in $3
need $u_app1, $u_app2,$u_app3,$u_app4,$u_app5 at the same time
inetc::post '{"extra":{"app1":"$u_app1","app2":"$u_app2", "app3":"$u_app3", "app4":"$u_app4", "app5":"$u_app5" }}' /SILENT /HEADER "Content-Type: application/json" "https://myurl.com/uninstalled" /CONNECTTIMEOUT -5
如何复制$3
到一个$R1
或任何自定义变量,以便以后使用它?
解决方案
变量只是字符串,因此您可以将它们复制为字符串:
var whatever
Section
StrCpy $R1 $3
StrCpy $whatever $3
SectionEnd
推荐阅读
- javascript - Javascript函数日期范围修改
- python - python套接字未在两台不同的机器上连接
- javascript - 如何通过单击页面上的按钮添加选项并添加选项以在另一个页面中选择标签?
- ios - Flutter:在 iOS 通话期间停止 AssetsAudioPlayer
- node.js - 在 NPM 上下载 Truffle 时出错(第一次很好,但第二次下载时出现问题)
- php - 如何将数组输出到字符串以在 mysql where IN 准备语句中使用
- r - 如何过滤每组每天的第一个事件,根据条件在另一列中选择一个变量,并对中间的值运行计算?
- php - 我想发布状态更新,但它显示为空?
- python - 无法将 RC522 RFID 模块连接到 Raspberry Pi 4
- javascript - 动态读取图像并知道其文件名