跳转到主要内容
在打包或上传游戏时,MakePkg 和 Submission Validator 通常会自动创建符号包。仅当无法自动创建符号包或自动创建未生成所需的符号包时,才将此过程用作备用方案。

开始之前

在创建符号包之前,请收集以下信息和文件:
  • 包的完整名称 (PackageFullName)。
  • 游戏 ID (TitleId)。
  • MicrosoftGame.config 中的 Identity Name 值。
  • 通过 /f 传递给 MakePkg 的确切布局文件。
  • 已打包的 EXE 和 DLL 文件。
  • 与每个已打包的 EXE 和 DLL 完全匹配的 PDB 文件。
如果创建包时未使用 /f,请使用 makepkg genmap 创建布局文件。将该文件传递给 makepkg pack /f 以重新生成包,然后在符号包中使用同一布局文件。
[!IMPORTANT] 每个 PDB 都必须与已打包版本中的二进制文件完全匹配。来自其他版本的 PDB 无法为该二进制文件提供符号。

创建符号包

  1. 创建名为 <PackageFullName>_<TitleId> 的根目录。
  2. 在根目录中,创建名为 game.txt 的文件,并在其中写入以下 JSON。将占位符值替换为你的包的标识名称和包完整名称。
  3. 将传递给 MakePkg 的确切布局文件复制到根目录中。例如,复制 layout.xml。
  4. 在根目录下,为每个 EXE 和 DLL 重新创建其在包中的目录路径。
  5. 在每个已打包的 EXE 或 DLL 所在的位置,创建一个与该二进制文件名称完全相同(包括 .exe 或 .dll 扩展名)的目录。
  6. 将该二进制文件及其完全匹配的 PDB 文件复制到该目录中。
  7. 验证符号包的结构。例如,包根目录中包含 MyGame.exe 和 Resources\MyDll.dll 的包具有以下结构:
    符号包在 Windows 文件资源管理器中的视图,每个二进制文件与其匹配的 PDB 位于以该二进制文件命名的文件夹中。
  8. 创建一个 ZIP 存档,其顶级目录为 <PackageFullName>_<TitleId>。
  9. 在 Partner Center 中,将该 ZIP 存档作为对应游戏和包的符号包上传。
最后修改于 2026年10月16日