从现有源文件创建驱动程序

从 Windows 驱动程序工具包 (WDK) 8 开始,WDK 与 Microsoft Visual Studio 完全集成。 现在,WDK 使用与你用于构建 Visual Studio 解决方案和项目相同的编译器和构建工具。MSBuild 取代了在早期版本的 WDK(早于 WDK 8)中使用的 Windows 构建实用工具 (Build.exe)。如果你拥有使用早期版本的 WDK 创建的驱动程序,则可以从现有代码轻松创建 Visual Studio 项目和解决方案。

要点  使用 WDK 8 创建的项目和解决方案必须经过升级,才能与 Windows 驱动程序工具包 (WDK) 8.1 和 Microsoft Visual Studio 2013 配合使用。打开项目或解决方案前,请先运行 ProjectUpgradeTool。ProjectUpgradeTool 将转换项目和解决方案,以便可以使用 WDK 8.1 构建它们。

 

WDK 提供一个转换实用工具,该实用工具从你的驱动程序的 sourcesdirsmakefile.inc 文件生成 Visual Studio 解决方案和项目文件。该实用工具在现有 sources 文件所在的目录中创建 Visual Studio 解决方案和项目文件。该实用工具不会改变你的源代码或之前的构建文件。如果需要在 Windows XP 上支持你的驱动程序,则可以继续对 Windows XP 使用先前的构建系统,并且对 Windows 8.1、Windows 8、Windows 7 和 Windows Vista 使用 WDK 8.1 或 WDK 8 和 Visual Studio 项目和解决方案。

下列选项用于从现有源文件创建 Visual Studio 驱动程序项目:

  • 使用 Visual Studio 并选择打开和转换现有驱动程序项目(基于 sourcesdirs 文件)。
  • 使用“Visual Studio 命令提示符”窗口和 WDK sources 以及 dirs 文件转换器 (Nmake2MsBuild.exe)。
  • *(Recommended)*使用提供的 Windows 驱动程序模板之一在 Visual Studio 中创建新的 Windows 驱动程序解决方案。 如果从驱动程序模型的模板开始,则项目的结构将成型并将选择正确的平台工具集。然后你可以将你的源文件添加到该解决方案。有关选择模板的信息,请参阅创建新的设备函数驱动程序创建新的筛选器驱动程序创建新的软件驱动程序

Hh454827.wedge(zh-cn,VS.85).gif打开和转换使用早期版本的 WDK 创建的驱动程序项目(“文件”>“打开”)的步骤

  1. 打开 Microsoft Visual Studio Ultimate 2012。在“文件”菜单中,单击“打开”****,然后单击“转换源/目录”。

  2. 在“打开”****对话框中,导航到包含驱动程序的 sourcesdirs 文件的目录,然后选择该文件并单击“打开”。 Visual Studio Ultimate 2012 中的“输出”窗口显示有关 Visual Studio 项目转换和创建的消息。 有关如何转换 sources 文件中元素的详细视图,你可以查看转换日志 (Nmake2MsBuild_sources.log)。 转换过程中,系统将询问你是否要打开并查看该日志文件。

  3. 在解决方案资源管理器中检查该项目。

    请参阅转换 UMDF 驱动程序时的其他步骤。

Hh454827.wedge(zh-cn,VS.85).gif从现有代码创建驱动程序项目(命令行)的步骤

  1. 打开一个“Visual Studio 命令提示符”窗口。 如果你的项目位于 %PROGRAMFILES% 下,则需要使用提升的权限(“以管理员身份运行”****)打开命令提示符窗口。

  2. 运行 Nmake2MsBuild 转换实用工具 (Nmake2MsBuild.exe) 并为你的驱动程序指定 sourcesdirs 文件的名称和路径。

    一次可以指定多个 sources 文件。得到的所有项目都将共享相同的解决方案和程序包项目。

    如果你对 dirs 文件上运行 Nmake2MsBuild 实用工具,则该实用工具将遍历所有 sources 文件的目录树并为每个目录生成 Visual Studio 项目文件。

    该转换工具位于 %PROGRAMFILES%\Windows Kits\8.0\bin\x86\ 目录中。

    例如,若要在目录 C:\Myproj 中为现有的 sources 文件生成一个 Visual Studio 项目文件,则将需要输入以下命令:

    Nmake2MsBuild.exe  c:\myProj\sources
    
  3. 通过在 Visual Studio 中打开项目文件 (*.vcxproj) 或解决方案文件 (*.sln) 来验证转换。 启动 Visual Studio 并单击“打开”,然后导航到你在其中转换 sources 文件的目录。 尝试使用默认的构建配置构建你的项目。

    如果你需要诊断或验证转换的项目文件,那么该实用工具会创建你可以使用的日志文件。默认的日志文件名为 Nmake2MSBuild_sources.log。该日志文件将报告错误和警告,还将描述如何将源文件中的元素转换为其 Visual Studio 项目文件。

    请参阅转换 UMDF 驱动程序时的其他步骤。

Nmake2MsBuild 实用工具

该转换工具位于 %PROGRAMFILES%\Windows Kits\8.0\bin\x86\ 目录中。 有关使用该转换工具及其选项的信息,请参阅 Nmake2MsBuild

转换 UMDF 驱动程序时的其他步骤

默认情况下,转换实用工具配置驱动程序包项目以使用内核调试程序(Windows 的调试工具 - 内核调试程序)。 如果你将 UMDF 驱动程序转换为 Visual Studio 解决方案,则应更改此设置,以便可以转而使用用户模式(远程)调试程序。

Hh454827.wedge(zh-cn,VS.85).gif指定用户模式(远程)调试程序

  1. 打开驱动程序项目的属性页。在“解决方案资源管理器”中右键单击驱动程序包项目,然后选择“属性”****。
  2. 在驱动程序包项目的属性页中,单击“配置属性”,然后单击“调试”****。
  3. 从调试程序启动下拉菜单,选择“Windows 的调试工具 - 远程调试”。

有关配置目标计算机以及设置调试电缆的信息,请参阅在 Visual Studio 中设置内核模式调试设置计算机以便进行驱动程序部署和测试 (WDK 8.1)

注意  你仍可以使用内核调试程序来调试 UMDF 驱动程序,但用户模式(远程)调试程序更方便。 如果从 UMDF 模板创建 UMDF 驱动程序,则默认情况下始终选择用户模式调试程序。

 

相关主题

WDK 和 Visual Studio 构建环境

Nmake2MsBuild

ProjectUpgradeTool

MSBuild

操作实例:使用 MSBuild

创建新的设备函数驱动程序

创建新的筛选器驱动程序

创建新的软件驱动程序