跳转到主要内容
本文档介绍如何获取无需安装即可使用的已提取 Microsoft Game Development Kit (GDK)。本部分说明如何针对 GDK 和 Windows SDK 执行此操作。此过程面向高级用户。
在大多数情况下,此过程并不能取代安装 Microsoft Game Development Kit (GDK) 的需要。此过程支持以下场景:
  1. 提取头文件和库,以便在构建过程中使用。
  2. 提取 Sideload 文件夹,以便无需安装完整的 Microsoft Game Development Kit (GDK),即可从指定的 Microsoft Game Development Kit (GDK) 运行 xbprovision(NDA 主题)。
以这种方式提取安装负载后,可以运行部分 Microsoft Game Development Kit (GDK) 工具,但这种做法未获得官方支持,你可能会遇到问题。

下载已提取的 Microsoft Game Development Kit

已提取的 Microsoft Game Development Kit (GDK) 是面向高级用户的一个选项,可以将特定文件集成到构建系统中,而无需安装完整的 Microsoft Game Development Kit (GDK)。已提取的 Microsoft Game Development Kit (GDK) 在 XBOX Developer Downloads 站点上作为单独的下载选项提供。该下载选项的标题中带有 Extracted 一词,以便与 GDK 安装程序下载选项区分开来。
使用此下载选项可以跳过 Microsoft Game Development Kit 的手动提取过程。这是推荐的选项。

手动提取 Microsoft Game Development Kit

除了下载已提取的 Microsoft Game Development Kit (GDK) 之外,你还可以从常规 Microsoft Game Development Kit (GDK) 安装程序中手动提取文件。下载常规 Microsoft Game Development Kit (GDK) 后,可以使用 Windows Installer (msiexec.exe) 提取每个安装程序包,以访问其中的各个文件。
以下过程展示了 Windows Installer (msiexec.exe) 的一种特定用法。有关 msiexec.exe 的详细信息,请参阅 Windows Installer。

提取所有 Microsoft Game Development Kit (GDK) MSI 的内容(使用 ExtractXboxOneDKs.ps1)

  1. 在 XBOX Developer Downloads 站点上下载 Microsoft Game Development Kit 安装程序。或者,从 GitHub 存储库下载公开版 Microsoft Game Development Kit (GDK) 安装程序(仅支持 PC 开发)。 下载的文件名称类似于 GDK_03_2022.zip。请记下它在计算机上的位置。
  2. 解压本地 .zip 文件的内容。
  3. 打开 PowerShell 提示符,导航到内容解压目标文件夹中的 SetupScripts 目录(例如 C:\GDKDownload\SetupScripts)
    • 此目录中的 ExtractXboxOneDKs.ps1 脚本可用于提取 GDK。其用法为:
      • .\ExtractXboxOneDKs.ps1 -SourcePath <MSI_Source_Folder> -TargetDirectory <Target_Directory>
      • 例如,SourcePath 是 .zip 文件的解压位置(例如 C:\GDKDownload)。TargetDirectory 是提取内容的存放位置(例如 C:\ExtractedGDK\220300)
  4. 运行 ExtractXboxOneDKs.ps1 脚本后,提取的文件将位于目标目录中(例如 C:\ExtractedGDK\220300)
  5. 导航到目标目录,然后将提取的 GDK 文件复制到构建系统所需的位置。
提取过程中,目标目录会包含一组 .msi 文件和一个 Windows Kits 文件夹。这些内容应忽略,可以删除。提取目标目录中唯一需要保留的文件夹是 Microsoft GDK 文件夹。

提取所有 Microsoft Game Development Kit (GDK) MSI 的内容(手动)

  1. 解压 GDK 后(上一节中的步骤 1-2),可以使用 Windows Installer (msiexec.exe) 提取每个安装程序包,以访问其中的各个文件。
  2. 在命令提示符窗口中,导航到包含从 .zip 文件解压出的文件的文件夹,然后运行以下命令行:
    其中,installation_folder 是 GDK 下载文件所在的路径,msi_extraction_path 指定要将 Windows Installer (.msi) 文件中的文件提取到的文件夹。例如:
    如果在脚本中而不是直接在命令行中使用此代码示例,则需要将 %G 替换为 %%G。
  3. 导航到 msi_extraction_path,然后将提取的 GDK 文件复制到构建系统所需的位置。

提取 Windows SDK

手动提取 Windows SDK 安装负载是面向高级用户的一个选项,可以将特定文件集成到构建系统中,而无需安装完整的 Windows SDK。只要系统上已安装 Windows SDK,使用已提取的 Microsoft Game Development Kit (GDK) 时就无需执行此步骤。

提取所有 Windows SDK MSI 的内容(使用 ExtractXboxOneDKs.ps1)

从 2023 年 10 月 GDK 起,GDK 需要 Windows 11 SDK(版本 10.0.22000.0)或更高版本。
  1. 从 Windows 开发人员中心下载 Windows SDK 安装程序。下载的文件名称类似于 winsdksetup.exe。请记下它在计算机上的位置。
  2. 打开命令提示符,在 exe 的下载目录中运行 winsdksetup.exe /layout C:\WinSDKDownload(这会从 exe 中提取 msi 文件)。
  3. 逐步完成 UI,保持所有复选框处于选中状态,然后让它下载所有文件。
  4. 导航到 C:\WinSDKDownload,确认 .msi 文件存在。
    或者,你也可以下载 Windows SDK .ISO 并装载它。其中包含与步骤 1-4 生成的相同的 .msi 文件。
  5. 使用上文 提取所有 Microsoft Game Development Kit (GDK) MSI 的内容(使用 ExtractXboxOneDKs.ps1) 中提到的脚本,将 SourcePath 指向 msi 文件夹(例如 C:\WinSDKDownload),将 TargetDirectory 指向另一个用于存放提取内容的文件夹(例如 C:\ExtractedWinSDK)。
    由于所含文件的路径较长,建议将源目录和目标目录(仅用于提取)的长度限制在 45 个字符以内(包括驱动器号)。提取完成后可以再移动它们。文件夹路径超过 45 个字符会导致提取失败,因为超出了最大文件路径长度。
  6. 运行 ExtractXboxOneDKs.ps1 脚本后,提取的文件将位于目标目录中(例如 C:\ExtractedWinSDK)
  7. 导航到目标目录,然后将提取的 Windows SDK 文件复制到构建系统所需的位置。
    提取完成后,目标目录中会有许多文件和文件夹。本示例中供构建系统引用的是 Windows Kits\10 文件夹。根据所需操作,可能还需要其他文件夹。

提取所有 Windows SDK MSI 的内容(手动)

  1. 从 winsdksetup.exe 获取一组 .msi 文件后(上一节中的步骤 1-4),可以使用 Windows Installer (msiexec.exe) 提取每个安装程序包,以访问其中的各个文件。
  2. 在命令提示符窗口中,导航到包含从 .zip 文件解压出的文件的文件夹,然后运行以下命令行:
    其中,installation_folder 是 Windows SDK 下载文件所在的路径,msi_extraction_path 指定要将 Windows Installer (.msi) 文件中的文件提取到的文件夹。例如:
    如果在脚本中而不是直接在命令行中使用此代码示例,则需要将 %G 替换为 %%G。
  3. 导航到 msi_extraction_path,然后将提取的 Windows SDK 文件复制到构建系统所需的位置。
提取 Microsoft Game Development Kit 时,假定此文件夹将位于共享位置或源代码管理系统中,以便在构建游戏时访问。在某些场景下,可能需要使用多个版本的 Microsoft Game Development Kit (GDK)。在这种场景下,我们对多个已提取 Microsoft Game Development Kit (GDK) 版本的布局建议如下:
  • …\ExtractedGDK\211000\Microsoft GDK…
  • …\ExtractedGDK\220300\Microsoft GDK…
这样可以让每个版本都拥有完整的负载。我们建议你使用构建环境变量在版本之间切换,以定义构建编译过程中使用的版本。

另请参阅

在不安装 Microsoft Game Development Kit (GDK) 的情况下配置构建环境 在不安装的情况下使用 Microsoft Game Development Kit (GDK)
最后修改于 2026年11月6日