huiyadanli/RevokeMsgPatcher · error · BusinessException

change_null

change_null

Error message

在安装补丁时,变更的内容为空!

What it means

Error "在安装补丁时,变更的内容为空!" thrown in huiyadanli/RevokeMsgPatcher.

Source

Thrown at RevokeMsgPatcher/Modifier/FileHexEditor.cs:111

                    File.Copy(FilePath, FileBakPath, true);
                }
            }
            else
            {
                File.Copy(FilePath, FileBakPath, true);
            }

        }

        /// <summary>
        /// 打补丁
        /// </summary>
        /// <returns></returns>
        public bool Patch()
        {
            if (TargetChanges == null)
            {
                throw new BusinessException("change_null", "在安装补丁时,变更的内容为空!");
            }

            FileUtil.EditMultiHex(FilePath, TargetChanges);
            return true;
        }

        /// <summary>
        /// 还原
        /// </summary>
        public void Restore()
        {
            File.Copy(FileBakPath, FilePath, true);
        }
    }
}

View on GitHub (pinned to 89cbbb3f0c)

Solutions

  1. 确认目标应用版本是否在补丁支持的版本列表内,必要时更新补丁信息或升级/降级应用
  2. 重新获取最新的补丁配置数据后再执行安装
  3. 先执行还原,确保目标文件处于未被修改的原始状态后再重新安装补丁

Example fix

在补丁安装界面点击“获取最新补丁信息”,确认应用版本受支持后重新点击安装;若仍失败,先点击“还原”恢复原始文件再安装。

When it happens

Trigger: FileHexEditor.Patch() 被调用时 TargetChanges 为 null,即文件修改器没有生成任何补丁变更内容。通常是因为匹配到的补丁配置中没有适用于当前文件版本/特征的修改项,或前置的特征比对未能产出有效的修改数据。

Common situations: 目标应用版本过新或过旧,补丁库中没有对应的修改特征;同一文件被重复打补丁导致没有需要变更的内容;补丁配置文件(如 patch.json)缺失或与当前应用版本不匹配。


AI-assisted analysis of huiyadanli/RevokeMsgPatcher@89cbbb3f0c (2026-08-13). Data as JSON: /api/errors/b1ac2175d4100d13. Report an issue: GitHub.