1

我试图说服 Visual Studio 2013 构建驱动程序。但从未见过 Visual Studio 2013 成功构建驱动程序,我不知道如何解决该问题。

所以是时候回到起点了。删除整个解决方案并开始一个接一个地添加内容,直到构建失败。除了我无法获得一个空的解决方案来构建。

让我们创建一个新的空 WDM 驱动程序项目

在 Visual Studio 2013 中,我选择:

  • 文件新建项目
  • 模板, Visual C++ , Windows 驱动程序, WDM
  • 空 WDM 驱动程序

我现在有一个新的、空的、驱动程序解决方案:

在此处输入图像描述

除非我尝试构建它,否则它会失败:

SIGNTASK:SignTool 错误:找不到文件:D:\Develop\TestDriver\MyDriver3\Win7Debug\MyDriver3.sys

现在这个错误并不意外,解决方案中甚至没有任何代码可以构建到.sys文件中!

所以我会添加一些代码

现在让我们通过添加一个空的 WDM 驱动程序文件来创建一个空的 WDM 驱动程序项目:

来源.c

#include <wdm.h>

NTSTATUS DriverEntry(PDRIVER_OBJECT object, PUNICODE_STRING registryPath)
{
   return STATUS_SUCCESS;
}

现在这也失败了,但这次失败并显示与上次完全相同的错误消息:

SIGNTASK:SignTool 错误:找不到文件:D:\Develop\TestDriver\MyDriver3\Win7Debug\MyDriver3.sys

这是有道理的,没有MyDriver3.sys文件。不在那个文件夹里,不在任何地方。这里没有.sys文件,那里没有.sys文件。任何地方都没有.sys文件。

如何创建一个基本的、空的、WDM 驱动程序?

所以这给我留下了一个问题:

如何创建一个基本的、空的 WDM 驱动程序?

我担心即使 Visual Studio 确实创建了一个.sys文件,它也会在下一个错误时失败。所以我想要的是一个空 WDM 解决方案的锥形示例 - 构建。

奖金阅读

4

2 回答 2

0

我没有使用包构建,但您仍然需要:1)转到解决方案资源管理器并选择配置管理器 2)在配置管理器中,选择活动解决方案配置在我的情况下,它是活动解决方案配置:Win8.1 调试活动解决方案平台: x64 这就是全部 - 只需按构建

于 2015-07-08T11:30:25.587 回答
0

听起来您在inf文件中缺少一些指令,这些指令描述了您要安装的驱动程序服务的名称,或者您的项目设置对于您要实现的目标不正确。

如果您不想要驱动程序服务(通常是内核模式驱动程序中的 .sys 文件),那么您需要更改项目的Configuration Typefrom Driverto设置,Utility并确保删除 .inf 文件中的服务安装指令。

这就是它的短处,但可能项目配置中的其他设置也不正确。

于 2018-12-07T00:43:31.793 回答