> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Submission Validator (SubmissionValidator.dll)

> Submission Validator (SubmissionValidator.dll)

Submission Validator 是 Microsoft 游戏开发工具包(GDK)的一个组件,它对游戏或应用包运行一系列基本的质量检查。Submission Validator 为开发者提供反馈,以帮助解决可能在 Microsoft 的内容摄取和认证过程中导致游戏失败的常见问题。当提交游戏包时,系统会使用最新版本的 Submission Validator 来检测可能导致游戏被拒绝的任何问题。Submission Validator 的总体目标是自动化这些检查,并尽早将其推进到流程中,以确保合作伙伴能够在提交认证之前自行诊断和修正问题。

* [使用 Submission Validator](#using-submission-validator)
* [Submission Validator 能识别的问题](#problems-identified-by-submission-validator)
* [理解结果日志](#understanding-the-results-log)
* [更新 Submission Validator](#updating-submission-validator)
* [Submission Validator 版本说明](#submission-validator-release-notes)

## 使用 Submission Validator

Submission Validator 并不是开发者直接使用的独立工具。相反,当使用 [makepkg pack](/build/core-features/common/packaging/deployment/makepkg) 命令时,它会被自动调用以检查应用。有关语法和命令行使用的详细信息,请参见 [makepkg](/build/core-features/common/packaging/deployment/makepkg) 参考页。

Submission Validator 会在创建游戏包之后运行。验证失败会记录在验证日志中,该日志写入 [makepkg](/build/core-features/common/packaging/deployment/makepkg) 命令行中指定的输出位置。这与生成的最终游戏包所在的输出位置相同。如果在 [makepkg](/build/core-features/common/packaging/deployment/makepkg) 上设置了 `/validationlanguage` 参数,同一位置还会提供输出的本地化版本(除英文输出之外)。当前额外支持的验证语言是 ja-jp。

Submission Validator 的一部分测试可以在创建游戏包之前通过运行 [makepkg validate](/build/core-features/common/packaging/deployment/makepkg) 命令行执行。我们建议在包创建前运行,以尽早发现问题。

## Submission Validator 能识别的问题

Submission Validator 识别的问题类型会随时间不断增加和演进,以实现让游戏从提交、认证到进入市场之路更加顺畅的目标。有关 Submission Validator 当前能检测到的问题列表,请参见 [Submission Validator 质量检查](/build/core-features/common/packaging/subval/submissionvalidator-tests)。

## 理解结果日志

在 `makepkg` 过程完成后,游戏 XVC 会出现在输出文件夹中。验证日志位于同一文件夹。你可以通过它形如 *“Validator\_\[title and package identifier].xml.”* 的名称识别它。你应检查此日志以查找任何失败或警告。除前面各部分中已展示的失败和警告之外,任何 `<failure>` 标签都表示某种情况会导致你的提交在内容摄取、母带制作和认证阶段被拒绝。虽然没有任何东西阻止你提交这样的包,但这样做会浪费你的时间和精力。更好的做法是修正识别出的问题,直到日志中不再包含 `<failure>` 标签。

你也可能在日志中看到 `<warning>` 标签。这些通常表示可能需要豁免的问题。如果你对任何识别出的警告有疑问,请联系你的开发者账户经理(DAM)。即使你为你的游戏获得了豁免,`<warning>` 标签仍会出现在日志文件中。有关日志消息的完整列表,请参见 [Submission Validator 消息](/build/core-features/common/packaging/subval/submissionvalidator-messages)。

`<validatorrun>` 部分位于日志末尾,如下所示。此部分包含一个 `<result>` 标签,指示 Submission Validator 测试的整体 Fail 或 Success。任何部分中的任一失败都会导致整体失败。

```xml theme={null}
<validatorrun>
  <starttime>Sep 23 2019 16:43:41</starttime>
  <endtime>Sep 23 2019 16:43:41</endtime>
  <result>Fail</result>
</validatorrun>  
```

用于测试的 Submission Validator 版本号位于日志文件顶部。以下示例显示了日志文件中的此版本号。

```xml theme={null}
<XboxOneSubmissionValidator>
  <engineversion>10.0.18362.7198</engineversion>  
```

当 Microsoft 收到你的提交时,将使用最新版本的 Submission Validator 对其进行测试。我们强烈建议你在准备提交游戏时定期更新你使用的 Submission Validator 版本。有关详细信息,请参见以下部分。

## 更新 Submission Validator

Submission Validator 实现为一个单独的 SubmissionValidator.dll,位于 Microsoft 游戏开发工具包(GDK)的 `\Bin` 目录中。Submission Validator 的更新并不总是与 Microsoft 游戏开发工具包(GDK)的发布周期一致。Submission Validator 的当前版本始终可从 [developer.microsoft.com/games/resources -> downloads](https://aka.ms/currentsubvalzip) 下载。下载压缩(.zip)文件,打开它,并将更新后的 SubmissionValidator.dll 放入 Microsoft 游戏开发工具包(GDK)的 `\Bin` 目录中,覆盖以前版本的 Submission Validator。Certification Tools 页面还包括当前发布版本号和日期。压缩文件内部有一个文本文件,其中包含当前版本的发布说明,包括已知问题以及 Submission Validator 执行的检查相对于本文中描述发生的变化。

从 **2025 年 10 月 GDK** 起,`makepkg` 支持 `/updatesubval` 选项,它会检查 `SubmissionValidator.dll` 是否有更新版本。如果有可用更新,此选项会下载并安装该 DLL 到包含 `makepkg.exe` 的目录,默认是 GDK 的 `\Bin` 目录。如果指定了 `/validationpath`,则该 DLL 会安装到该目录中。如果更新失败,打包或验证会继续使用当前已安装版本的 `SubmissionValidator.dll`。

从 **2026 年 10 月 GDK** 起,可使用独立的 [`makepkg updatesubval`](/build/core-features/common/packaging/deployment/makepkg#updatesubval) 命令来更新 `SubmissionValidator.dll`,而无需创建、验证或上传包。与 `/updatesubval` 选项不同,独立命令在更新失败时会返回非零退出码。

当应用、游戏或内容包提交给 Microsoft 时,会使用当前版本的 Submission Validator 检查该提交。在提交你的应用、游戏或内容包之前,我们建议你确保你构建提交包所在的开发 PC 上装有最新版本的 Submission Validator。

## Submission Validator 版本说明

有关 Submission Validator 每次发布的变更信息,请参见 XBOX Developer Forums 上的 [Submission Validator 更新](https://aka.ms/subvalupdates) 订阅源。

## Submission Validator 主题

[Submission Validator 质量检查](/build/core-features/common/packaging/subval/submissionvalidator-tests)

介绍 Submission Validator 执行的质量检查。

[Submission Validator 消息](/build/core-features/common/packaging/subval/submissionvalidator-messages)

介绍 Submission Validator 生成的消息(警告、错误和提示)。

## 相关主题

[Make package (makepkg.exe)](/build/core-features/common/packaging/deployment/makepkg)

[游戏打包、内容更新和流式安装测试](/build/core-features/common/packaging/title-packaging-streaming-install-testing)

XBOX Requirements (XRs) [(XBOX Developer Downloads->Partner, Publishing, and Release Management Information->XGD Partner Documentation)](https://aka.ms/xgddl)


## Related topics

- [Submission Validator 消息](/zh-CN/build/core-features/common/packaging/subval/submissionvalidator-messages.md)
- [Submission Validator 质量检查](/zh-CN/build/core-features/common/packaging/subval/submissionvalidator-tests.md)
- [Submission Validator (SubVal) 质量检查参考](/zh-CN/build/core-features/common/packaging/subval/index.md)
- [游戏打包、更新与流式安装测试](/zh-CN/build/core-features/common/packaging/title-packaging-streaming-install-testing.md)
- [认证分步指南](/zh-CN/publishing/game-publishing/concepts/certification/certification-guide.md)
