2026-07-14 01:37:06 +00:00
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version= "2.1" language= "zh_CN" >
<context>
<name> ConfigHelper</name>
<message>
<location filename= "../Common/ConfigHelper.cpp" line= "164" />
<source> The user canceled the administrator permission confirmation.</source>
<translation> 用户取消了管理员权限确认。</translation>
</message>
<message>
<location filename= "../Common/ConfigHelper.cpp" line= "165" />
<source> Windows error %1</source>
<translation> Windows 错误 %1</translation>
</message>
<message>
<location filename= "../Common/ConfigHelper.cpp" line= "173" />
<source> Administrator Permission Required</source>
<translation> 需要管理员权限</translation>
</message>
<message>
<location filename= "../Common/ConfigHelper.cpp" line= "174" />
<source> The current installation directory requires administrator permission to save configuration.
Target file: %1
Reason: %2
Click OK, then choose Yes in the Windows permission confirmation dialog.</source>
<translation> 当前安装目录需要管理员权限才能保存配置。
目标文件:%1
原因:%2
点击“确定”后,请在 Windows 权限确认窗口中选择“是”。</translation>
</message>
<message>
<location filename= "../Common/ConfigHelper.cpp" line= "181" />
<source> The user canceled the administrator permission request.</source>
<translation> 用户取消了管理员权限请求。</translation>
</message>
</context>
<context>
<name> Launcher</name>
<message>
<location filename= "../Launcher/main.cpp" line= "27" />
<source> Checking for software updates...</source>
<translation> 正在检查软件更新...</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "28" />
<source> Marsco Launcher</source>
<translation> Marsco 软件启动器</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "58" />
<source> Please enter the License for %1:</source>
<translation> 请输入 %1 的授权 License: </translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "59" />
<location filename= "../Launcher/main.cpp" line= "61" />
<source> the application</source>
<translation> 软件</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "60" />
<source> %1
Please enter a new License for %2:</source>
<translation> %1
请重新输入 %2 的授权 License:</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "64" />
<source> Enter License</source>
<translation> 输入 License</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "72" />
<source> License Required</source>
<translation> 需要 License</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "73" />
<source> A License provided by the administrator is required for the first launch.</source>
<translation> 首次启动需要输入管理员提供的 License。</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "78" />
<source> License Cannot Be Empty</source>
<translation> License 不能为空</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "79" />
<source> Please paste the License created in the admin page.</source>
<translation> 请粘贴管理员在后台创建的 License。</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "85" />
<source> Failed to Save License</source>
<translation> 保存 License 失败</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "86" />
<source> Cannot write the configuration file:
%1
%2</source>
<translation> 无法写入配置文件:
%1
%2</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "90" />
<source> Verifying License...</source>
<translation> 正在验证 License...</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "113" />
<source> Device Authentication Failed</source>
<translation> 设备身份验证失败</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "118" />
<source> The current License cannot be used: %1</source>
<translation> 当前 License 无法使用:%1</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "138" />
<source> The device or License authorization is invalid.</source>
<translation> 设备或 License 授权无效。</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "142" />
<source> The current authorization was rejected by the server: %1</source>
<translation> 当前授权被服务端拒绝:%1</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "146" />
<source> License Saved</source>
<translation> License 已保存</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "147" />
<source> Please restart Launcher to complete device authorization and update checking.</source>
<translation> 请重新启动 Launcher 完成设备授权和更新检查。</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "152" />
<source> Authorization Rejected</source>
<translation> 授权被拒绝</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "169" />
<source> Select Offline Update Package</source>
<translation> 选择离线更新包</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "171" />
<source> Marsco offline update package (*.upd)</source>
<translation> Marsco 离线更新包 (*.upd)</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "179" />
<location filename= "../Launcher/main.cpp" line= "300" />
<source> Offline Update</source>
<translation> 离线更新</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "180" />
<source> No offline update package was selected.</source>
<translation> 未选择离线更新包。</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "198" />
<source> Verifying local runtime policy...</source>
<translation> 正在验证本地运行策略...</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "206" />
<location filename= "../Launcher/main.cpp" line= "214" />
<location filename= "../Launcher/main.cpp" line= "233" />
<source> Cannot Start</source>
<translation> 无法启动</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "207" />
<source> The local version policy is invalid: %1</source>
<translation> 本地版本策略无效:%1</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "215" />
<source> The local version policy has expired. Please connect to the network or contact the administrator.</source>
<translation> 本地版本策略已过期,请连接网络或联系管理员。</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "222" />
<source> Current Version Cannot Run</source>
<translation> 当前版本不可运行</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "223" />
<source> The current version %1 has been disabled by the administrator.</source>
<translation> 当前版本 %1 已被管理员停用。</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "234" />
<source> Cannot read the local state: %1</source>
<translation> 无法读取本地状态:%1</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "241" />
<location filename= "../Launcher/main.cpp" line= "249" />
<source> Security Check Failed</source>
<translation> 安全检查失败</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "242" />
<source> A version policy sequence rollback was detected. Startup has been blocked.</source>
<translation> 检测到版本策略序列回退,已阻止启动。</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "250" />
<source> A possible system time rollback was detected. Startup has been blocked.</source>
<translation> 检测到系统时间可能被回拨,已阻止启动。</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "258" />
<source> Version Rollback</source>
<translation> 版本回退</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "259" />
<source> Update Required</source>
<translation> 必须更新</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "259" />
<source> New Version Available</source>
<translation> 发现新版本</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "262" />
<source> The administrator provided version %1 as the rollback target. Downgrade now?</source>
<translation> 管理员提供了版本 %1 作为回退目标,是否现在降级?</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "263" />
<source> Version %1 is available. Update now?</source>
<translation> 发现新版本 %1,是否现在更新?</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "264" />
<source>
Target version: %1</source>
<translation>
目标版本:%1</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "275" />
<location filename= "../Launcher/main.cpp" line= "324" />
<source> Startup Failed</source>
<translation> 启动失败</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "276" />
<location filename= "../Launcher/main.cpp" line= "325" />
<source> Cannot start the main application: %1</source>
<translation> 无法启动主程序:%1</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "285" />
<source> Updater Startup Failed</source>
<translation> 更新器启动失败</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "286" />
<source> Cannot start the updater: %1</source>
<translation> 无法启动更新器:%1</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "298" />
<source> Caching signed version manifest...</source>
<translation> 正在缓存签名版本清单...</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "305" />
<source> Manifest Cache Failed</source>
<translation> 清单缓存失败</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "306" />
<source> Cannot cache the signed manifest for the current version: %1</source>
<translation> 无法缓存当前版本的签名清单:%1</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "295" />
<source> Server Unavailable</source>
<translation> 服务器不可用</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "296" />
<source> Cannot connect to the update server. Import an offline update package?</source>
<translation> 当前无法连接更新服务器。是否导入离线更新包?</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "301" />
<source> No offline update package was selected, or the updater could not be started.</source>
<translation> 未选择离线更新包或无法启动更新器。</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "311" />
<source> Network Unavailable</source>
<translation> 网络不可用</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "312" />
<source> Cannot connect to the update server, and the current policy does not allow offline startup.</source>
<translation> 无法连接更新服务器,且当前策略不允许离线启动。</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "317" />
<source> The application is up to date. Starting...</source>
<translation> 当前已是最新版本,正在启动...</translation>
</message>
<message>
<location filename= "../Launcher/main.cpp" line= "318" />
<source> Offline mode is active. Starting...</source>
<translation> 当前处于离线模式,正在启动...</translation>
</message>
</context>
<context>
<name> Updater</name>
<message>
<location filename= "../Updater/main.cpp" line= "40" />
<source> Invalid Offline Package</source>
<translation> 离线包无效</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "52" />
<source> Updater Argument Error</source>
<translation> 更新器参数错误</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "53" />
<source> The updater is missing online update arguments or an offline update package.</source>
<translation> 更新器缺少在线更新参数或离线更新包。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "73" />
<source> Offline Package Not Applicable</source>
<translation> 离线包不适用</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "74" />
<source> The update package application or channel does not match the local configuration.</source>
<translation> 更新包的应用或渠道与本机配置不一致。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "83" />
<source> Offline Update Rejected</source>
<translation> 离线更新被拒绝</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "84" />
<source> The local signed policy has expired, forbids offline updates, or does not allow the target version.</source>
<translation> 本地签名策略已过期、禁止离线更新或不允许目标版本。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "91" />
<source> Downgrade Forbidden</source>
<translation> 禁止降级</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "92" />
<source> The current signed policy does not allow installing an offline package with a lower version.</source>
<translation> 当前签名策略不允许安装较低版本的离线包。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "104" />
<location filename= "../Updater/main.cpp" line= "112" />
<source> Update Recovery Failed</source>
<translation> 更新恢复失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "105" />
<source> An unfinished update was detected, but the old version could not be restored: %1
Do not continue running the software. Please contact the administrator.</source>
<translation> 检测到上次更新未完成,但无法恢复旧版本:%1
请不要继续运行软件,并联系管理员。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "113" />
<source> The old files were restored, but the version state could not be restored. Please check write permissions for the configuration directory.</source>
<translation> 旧文件已经恢复,但无法恢复版本状态,请检查配置目录写入权限。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "120" />
<source> Preparing update...</source>
<translation> 正在准备更新...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "121" />
<source> Updating to %1</source>
<translation> 正在更新到 %1</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "150" />
<source> Preparing download...</source>
<translation> 正在准备下载...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "151" />
<source> Downloading: %1</source>
<translation> 正在下载:%1</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "213" />
<source> Delegating rollback to Bootstrap...</source>
<translation> 正在将回滚工作移交给 Bootstrap...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "222" />
<source>
Cannot start Bootstrap to perform rollback. Do not continue running the software. Please contact the administrator.</source>
<translation>
无法启动 Bootstrap 执行回滚。请不要继续运行软件,并联系管理员。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "232" />
<source> Transaction Resume Failed</source>
<translation> 事务续办失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "233" />
<source> Cannot read the Bootstrap update transaction: %1</source>
<translation> 无法读取 Bootstrap 更新事务:%1</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "246" />
<source> Update Rolled Back</source>
<translation> 更新已回滚</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "248" />
<source> The new version failed to install or start. The old version has been restored and started automatically.</source>
<translation> 新版本安装或启动失败,已自动恢复并启动旧版本。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "249" />
<source> The old files were restored, but the old version number could not be written back. Please check configuration directory permissions.</source>
<translation> 旧文件已经恢复,但旧版本号写回失败,请检查配置目录权限。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "256" />
<source> Automatic Rollback Failed</source>
<translation> 自动回滚失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "257" />
<source> Bootstrap could not fully restore the old version. Do not continue running the software. Please contact the administrator.</source>
<translation> Bootstrap 无法完整恢复旧版本。请不要继续运行软件,并联系管理员。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "261" />
<location filename= "../Updater/main.cpp" line= "267" />
<source> Update Preparation Failed</source>
<translation> 更新准备失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "262" />
<source> Cannot create the update transaction directory or save the transaction state.</source>
<translation> 无法创建更新事务目录或保存事务状态。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "268" />
<source> Cannot save the offline transaction marker.</source>
<translation> 无法保存离线事务标记。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "274" />
<source> Fetching and verifying version manifest...</source>
<translation> 正在获取并验证版本清单...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "275" />
<source> Verifying offline update package...</source>
<translation> 正在验证离线更新包...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "279" />
<location filename= "../Updater/main.cpp" line= "306" />
<location filename= "../Updater/main.cpp" line= "308" />
<source> Manifest Cache Failed</source>
<translation> 清单缓存失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "280" />
<source> Cannot read the signed manifest cache after Bootstrap installation.</source>
<translation> Bootstrap 安装后无法读取签名 Manifest 缓存。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "286" />
<location filename= "../Updater/main.cpp" line= "288" />
<source> Security Verification Failed</source>
<translation> 安全验证失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "287" />
<source> Cannot reverify the manifest signature after Bootstrap installation.</source>
<translation> Bootstrap 安装后无法重新验证版本清单签名。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "289" />
<source> The version manifest signature is invalid. The update has stopped. Please contact the administrator.</source>
<translation> 版本清单签名无效,更新已停止。请联系管理员。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "307" />
<source> Cannot save the new version manifest cache.</source>
<translation> 无法保存新版本 Manifest 缓存。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "309" />
<source> Cannot save the new version manifest cache. The update has stopped.</source>
<translation> 无法保存新版本 Manifest 缓存,更新已停止。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "316" />
<source> Fetching secure download URLs...</source>
<translation> 正在获取安全下载地址...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "317" />
<source> Preparing offline package files...</source>
<translation> 正在准备离线包文件...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "321" />
<source> No Files to Update</source>
<translation> 没有可更新文件</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "322" />
<source> The server did not return any version files. The update has stopped.</source>
<translation> 服务器没有返回任何版本文件,更新已停止。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "330" />
<source> Insufficient Disk Space</source>
<translation> 磁盘空间不足</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "331" />
<source> The update requires at least %1 of free space, but the installation drive currently has only %2.
The required space includes downloaded files, old version backups, and a safety margin.</source>
<translation> 更新至少需要 %1 可用空间,安装盘当前仅剩 %2。
所需空间已包含下载文件、旧版本备份和安全余量。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "340" />
<source> Downloading and verifying %1 version files...</source>
<translation> 正在下载并校验 %1 个版本文件...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "341" />
<source> Extracting and verifying %1 offline files...</source>
<translation> 正在提取并校验 %1 个离线文件...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "344" />
<source> Offline Package Extraction Failed</source>
<translation> 离线包提取失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "350" />
<source> Download Failed</source>
<translation> 下载失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "351" />
<source> Some files failed to download or failed SHA-256 verification. Please check the network and try again.</source>
<translation> 部分文件下载失败或 SHA-256 校验未通过,请检查网络后重试。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "357" />
<source> Verifying complete version files...</source>
<translation> 正在校验完整版本文件...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "359" />
<source> File Verification Failed</source>
<translation> 文件校验失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "360" />
<source> The staged files do not match the version manifest. The update has stopped.</source>
<translation> 暂存文件与版本清单不一致,更新已停止。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "373" />
<source> Bootstrap Cannot Self-Update</source>
<translation> Bootstrap 无法自更新</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "374" />
<source> This version contains a new %1. Please upgrade this component with the installer, then publish the business version again.</source>
<translation> 本次版本包含新的 %1。请使用安装包升级该组件,再重新发布业务版本。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "379" />
<source> Transaction Recording Failed</source>
<translation> 事务记录失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "380" />
<source> Cannot save the list of verified or pending deletion files. The update has stopped.</source>
<translation> 无法保存已校验或待删除文件列表,更新已停止。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "383" />
<source> Closing the main application...</source>
<translation> 正在关闭主程序...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "385" />
<source> Cannot Close Main Application</source>
<translation> 无法关闭主程序</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "386" />
<source> %1 is still running. Please close it manually and try again.</source>
<translation> %1 仍在运行,请手动关闭后重试。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "389" />
<source> Backing up %1 files to be changed, including %2 files to be deleted...</source>
<translation> 正在备份 %1 个待变更文件(其中删除 %2 个)...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "392" />
<source> Backup Failed</source>
<translation> 备份失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "393" />
<source> Cannot back up current version files. The new version has not been installed. Please check disk space and directory permissions.</source>
<translation> 无法备份当前版本文件,尚未安装新版本。请检查磁盘空间和目录权限。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "399" />
<location filename= "../Updater/main.cpp" line= "409" />
<location filename= "../Updater/main.cpp" line= "417" />
<location filename= "../Updater/main.cpp" line= "423" />
<source> Bootstrap Handoff Preparation Failed</source>
<translation> 接管准备失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "400" />
<source> Cannot create the Bootstrap file plan.</source>
<translation> 无法创建 Bootstrap 文件计划。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "410" />
<source> Cannot write the Bootstrap copy plan.</source>
<translation> 无法写入 Bootstrap 复制计划。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "418" />
<source> Cannot write the Bootstrap deletion plan.</source>
<translation> 无法写入 Bootstrap 删除计划。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "424" />
<source> Cannot commit the Bootstrap file plan or transaction state.</source>
<translation> 无法提交 Bootstrap 文件计划或事务状态。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "427" />
<source> Delegating installation to Bootstrap...</source>
<translation> 正在将安装工作移交给 Bootstrap...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "429" />
<source> Bootstrap Startup Failed</source>
<translation> Bootstrap 启动失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "430" />
<source> Cannot start the standalone update handoff program: %1</source>
<translation> 无法启动独立更新接管程序:%1</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "436" />
<source> Verifying Bootstrap installation result...</source>
<translation> 正在校验 Bootstrap 安装结果...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "438" />
<source> Installation Verification Failed</source>
<translation> 安装校验失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "439" />
<source> New version files failed verification after installation.</source>
<translation> 新版本文件安装后校验未通过。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "442" />
<source> Obsolete File Cleanup Failed</source>
<translation> 废弃文件清理失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "443" />
<source> An obsolete file still exists: %1</source>
<translation> 废弃文件仍然存在:%1</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "446" />
<source> Saving new version state...</source>
<translation> 正在保存新版本状态...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "449" />
<source> State Save Failed</source>
<translation> 状态保存失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "450" />
<source> Cannot save the current version number.</source>
<translation> 无法保存当前版本号。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "454" />
<source> Starting the new version and waiting for health confirmation...</source>
<translation> 正在启动新版本并等待健康确认...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "456" />
<source> Startup Failed</source>
<translation> 启动失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "457" />
<source> %1 cannot be started.</source>
<translation> %1 无法启动。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "466" />
<source> Startup Confirmation Failed</source>
<translation> 启动确认失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "467" />
<source> The new version did not complete startup health confirmation within %1 milliseconds.</source>
<translation> 新版本在 %1 毫秒内没有完成启动健康确认。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "470" />
<source> Committing update transaction...</source>
<translation> 正在提交更新事务...</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "472" />
<source> Transaction Commit Failed</source>
<translation> 事务提交失败</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "473" />
<source> The new version has started, but the update transaction could not be committed.</source>
<translation> 新版本已经启动,但无法提交更新事务。</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "481" />
<source> Update Complete</source>
<translation> 更新完成</translation>
</message>
<message>
<location filename= "../Updater/main.cpp" line= "482" />
<source> The software has been successfully updated to %1 and passed the startup health check.</source>
<translation> 软件已成功更新到 %1,并通过启动健康检查。</translation>
</message>
</context>
<context>
<name> UpdaterLogic</name>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "345" />
<source> Cannot open the offline update package</source>
<translation> 无法打开离线更新包</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "346" />
<source> The offline package format identifier is invalid</source>
<translation> 离线包格式标识无效</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "348" />
<source> The offline package header is incomplete</source>
<translation> 离线包头不完整</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "351" />
<source> The offline package header length is invalid</source>
<translation> 离线包头长度无效</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "354" />
<source> The offline package header JSON is invalid</source>
<translation> 离线包头 JSON 无效</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "359" />
<source> The offline package RSA signature is invalid</source>
<translation> 离线包 RSA 签名无效</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "361" />
<source> The offline package signature metadata is invalid</source>
<translation> 离线包签名元数据无效</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "362" />
<source> The manifest digest does not match the package signature</source>
<translation> Manifest 摘要与包签名不一致</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "364" />
<source> The offline manifest is invalid</source>
<translation> 离线 Manifest 无效</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "367" />
<source> Package information does not match manifest identity</source>
<translation> 包信息与 Manifest 身份不一致</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "368" />
<source> The offline manifest RSA signature is invalid</source>
<translation> 离线 Manifest RSA 签名无效</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "374" />
<source> The offline package contains an unsafe path or out-of-range data: %1</source>
<translation> 离线包包含不安全路径或越界数据:%1</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "377" />
<source> Cannot prepare offline file: %1</source>
<translation> 无法准备离线文件:%1</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "378" />
<source> Cannot create staged file: %1</source>
<translation> 无法创建暂存文件:%1</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "380" />
<source> Failed to read offline file: %1</source>
<translation> 离线文件读取失败:%1</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "381" />
<source> Offline file hash verification or write failed: %1</source>
<translation> 离线文件 Hash 或写入失败:%1</translation>
</message>
<message>
<location filename= "../Updater/UpdaterLogic.cpp" line= "383" />
<source> The offline package file count does not match the manifest</source>
<translation> 离线包文件数量与 Manifest 不一致</translation>
</message>
</context>
2026-07-14 08:39:41 +00:00
<context>
<name> Bootstrap</name>
<message>
<location filename= "../Bootstrap/main.cpp" line= "22" />
<source> Update Handoff Failed</source>
<translation> 更新交接失败</translation>
</message>
<message>
<location filename= "../Bootstrap/main.cpp" line= "137" />
<source> Bootstrap arguments are incomplete.</source>
<translation> Bootstrap 启动参数不完整。</translation>
</message>
<message>
<location filename= "../Bootstrap/main.cpp" line= "154" />
<source> The update plan is missing or invalid.</source>
<translation> 更新计划文件缺失或格式无效。</translation>
</message>
<message>
<location filename= "../Bootstrap/main.cpp" line= "189" />
<source> Cannot restart Updater.</source>
<translation> 无法重新启动 Updater。</translation>
</message>
<message>
<location filename= "../Bootstrap/main.cpp" line= "191" />
<source>
Failed file: %1</source>
<translation>
失败文件:%1</translation>
</message>
</context>
2026-07-14 01:37:06 +00:00
</TS>