[在商业发行之前会发生实质性修改的、与预发布产品相关的一些信息。Microsoft 不对此处提供的信息作任何明示或默示的担保。]
本主题介绍如何将使用 Microsoft Visual Studio 2013 和 Windows 驱动程序工具包 (WDK) 8.1 创建的驱动程序转换为使用 Windows 驱动程序工具包 (WDK) 10 在 Microsoft Visual Studio 2015 中生成的驱动程序项目。
Visual Studio 2015 具有新的编译器警告和错误。即使在 Visual Studio 2013 中生成的驱动程序项目毫无错误,但可能会在 Visual Studio 2015 中生成它时看到错误。
使用以下步骤在驱动程序解决方案中转换项目。
在 Visual Studio 2015 中打开旧版驱动程序解决方案。
Visual Studio 会自动运行 ProjectUpgradeTool,以转换此解决方案中的项目。你还可以从命令行运行此工具。默认情况下,安装 WDK 时,ProjectUpgradeTool.exe 也将在 Windows Kits\10\bin\x86 中安装。
Visual Studio 将打开标题为“升级 VC++ 编译器和库”的“查看解决方案操作”****对话框。 单击“确定”,Visual Studio 将尝试升级解决方案中的所有项目。
如果你看到“检测到的文件修改”****对话框,请选择“全部重新加载”。
在“解决方案资源管理器”窗格中,右键单击驱动程序项目名称,然后选择“属性”****。 单击“配置管理器”按钮。 在“活动解决方案配置”列表中,单击“<新建...>”。 键入一个名称,并从 Windows 8.1 项目上下文中复制设置。单击“确定”。
通常,转换后的解决方案包含两个配置文件,一个是调试(测试)文件,一个是版本文件。 若要使用 WDK 10 创建类似环境,只需选择“<新建...>”两次。 若要创建调试配置文件,请从“Win 8.1 调试”****配置文件中复制。若要创建版本配置文件,请从“Win 8.1 版本”配置文件中复制。
在先于 WDK 10 的 WDK 版本中,驱动程序解决方案始终需要程序包项目。 在 WDK 10 中,如果将多个驱动程序包含在一个驱动程序包中,则只需一个程序包项目。 请使用以下准则:
如果解决方案中只有一个驱动程序,并且存在程序包项目,请删除此解决方案。
如果解决方案中拥有多个驱动程序,请确保该解决方案包含程序包项目。然后,针对解决方案中的每个驱动程序项目,打开项目属性并导航至“配置属性”>“驱动程序设置”。 将“BuildPackage”设置为“否”。如果从命令行生成,请设置 /p:SupportsPackaging=false。
在驱动程序项目属性中再次选择“属性”。导航至“配置属性”>“驱动程序设置”>“常规”>“目标操作系统版本”****。选择 Windows 10。
验证“目标平台”是否设置为“桌面”****,并生成解决方案。 解决出现的任何错误。
成功生成解决方案后,将“目标平台”更改为“通用”****。
再次生成解决方案。此时,唯一的错误来自于 ApiValidator 工具,它检查驱动程序是否调用了任何非通用功能。 使用对通用 DDI 的调用替换任何对非通用 DDI 的调用。
有关 ApiValidator 的详细信息,请参阅验证通用 Windows 驱动程序。
若要了解如何确定给定的 DDI 的目标平台,请参阅 MSDN 驱动程序参考页上的目标平台。