问题标签 [kmdf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
228 浏览

c++ - 虚拟机上的驱动程序部署失败

我在教程的帮助下创建了示例驱动程序,代码包含,

VM-8164PR使用 ID 配置了Hardware ID Driver Update已选择的目标机器Root/Hello 尝试调试中的代码时VS debug option,日志Driver Deployment and VS Debugger显示它已失败,而setupapi.dev.log显示操作成功,

驱动程序部署日志如下.. Driver_Install_(x64)_(possible_reboot)仅添加日志,因为所有其他操作日志均显示成功,而此日志失败。

setupapi.dev.log 日志是

0 投票
0 回答
499 浏览

visual-studio - Visual Studio 2015 总是因 KMDF/UMDF 部署而崩溃

当我尝试Project Properties -> Driver Install -> Deployment部分设置目标设备时,我的 Visual Studio 2015 总是崩溃。

在此处输入图像描述

在这里,如果尝试配置设备,VS2015总是崩溃。对于 KMDF/UMDF 类型的项目,此行为是相同的。

在此处输入图像描述

我试图重新安装 WDK,但最终结果是一样的......我什至无法完成 MSDN 上的 UMDF/KDMF 项目的两个基本教程......

我该怎么做才能解决这个问题?

0 投票
1 回答
2911 浏览

c++ - UMDF,无法为 Microsoft 定义的类指定 [ClassInstall32] 部分

我正在学习下一个教程:如何编写您的第一个 USB 客户端驱动程序

而且我在编译项目时遇到了问题,我遇到了下一个错误:

在此处输入图像描述

我试图按照教程中的描述执行这些步骤,但在编译项目时总是出现上述错误。

另外,我尝试搜索,但没有找到任何有用的信息。

可能的附加信息,这可能会帮助您给我一条建议:

  • INF 文件: http: //pastebin.com/71d6bbQm
  • 使用 Windows 10、最新的 WDK 和 VS2015
  • 已经开始完全USB User-Mode Driver按照教程中提到的模板
0 投票
1 回答
220 浏览

c - 内核写入进程内存导致 BSOD

我一直在编写进程内存时遇到问题,在线查看资源我试图编译作弊引擎的方式。

尽管在调用它时出现了问题,每次 target[i] = source[i]; 都会导致 BSOD;

可能是我输入了不正确的“地址”/“大小”/“缓冲区”,但这是我的配置:

将 ULDat 作为要写入的内存 (ULONG),将 Irp->AssociatedIrp.SystemBuffer 的 pBuf 作为要写入的内存地址。

任何帮助将不胜感激,谢谢。

0 投票
0 回答
173 浏览

windows - Windows 设备驱动程序是否有 _DEBUG 预处理器定义?

Visual Studio 应该为 Win32 应用程序定义 _DEBUG。驱动程序似乎不是这种情况......是否有等效的,或者我需要自己定义一个用于调试配置?

我正在使用带有内核模式驱动程序 (KMDF) 项目的 Visual Studio 2015。

0 投票
2 回答
705 浏览

c++ - 内核驱动程序读取内存未发送整个字符串

我有这个内核驱动程序用于从进程内存中读取字符串:

这是C++中的通信过程:

在运行并搜索该字符串时,它实际上捕获了其中的前四个字母,并显示以下内容:

我已经使用另一种方法检查了字符串,它应该显示 ABCDEFGHIJKL...

问题就在这里,为什么它只读取(或可能写入)前四个字节?

0 投票
1 回答
444 浏览

visual-studio - 为什么 $KMDFCOINSTALLERVERSION$ 评估为分号?

上下文

这个问题与RAMDisk Storage Driver Sample相关,但也适用于Toaster Sample Driver,甚至可能适用于任何使用 .INX 文件和 CoInstaller 的驱动程序。

我最初的问题是“为什么我的构建成功时缺少 WdfCoInstallerXXXXX.dll 文件?” 查看ramdisk.inf文件后,我意识到所有的 coinstaller 部分都是空的(替换为分号)。这让我想到了下面的问题。

问题

ramdisk.inx文件的 coinstaller 部分使用$KMDFCOINSTALLEVERSION$变量。根据页面,这应该是一个有效的变量。但是,在成功构建后,所有引用$KMDFCOINSTALLEVERSION$变量的行都会在生成的ramdisk.inf文件中计算为分号。为什么?

附加信息

ramdisk.inx文件中的所有其他变量,例如$KMDFVERSION$$ARCH$,都会被正确评估。

0 投票
1 回答
618 浏览

visual-studio-2013 - error LNK2001: unresolved external symbol _SDDL_DEVOBJ_SYS_ALL_ADM_RWX_WORLD_RW_RES_R

I was searching for the above link error on Visual Studio 2013 KMDF driver project.

Since Linker errors are associated with libraries, i do not have a sample code. But let me share my solution for future developers who come across this error.

0 投票
1 回答
703 浏览

c - WDK 驱动程序加载问题(服务无法启动,或者因为它被禁用)

我已经使用 Windows 8.1 编写了许多驱动程序,在加载任何东西时都没有问题。当我尝试加载我在 Visual Studio 中构建的新的基本 KMDF 驱动程序时,似乎存在某种问题。我能够编辑源代码并编译在以前版本的 Windows 上构建的新版本的驱动程序项目,我认为 WDK 将是这里真正的罪魁祸首。即使我编辑源代码并重新编译,我也能够加载原始项目在 Windows 8.1 中生成的驱动程序,但特别是如果我尝试通过 Visual Studio 创建一个新的驱动程序项目,即内核模式驱动程序的示例库,它会失败加载错误:

“该服务无法启动,要么是因为它被禁用,要么是因为它没有与之关联的启用设备”

几点:驱动程序每次加载都失败并出现相同的错误,我有自己的 digicert 认证的受信任证书,并且我尝试禁用驱动程序签名强制,两者都出现相同的错误。所以可以肯定地说证书不是问题。

我能分辨出新旧 WDK 源之间的唯一主要区别是旧版本专门具有要构建的 Windows 版本,但新版本具有“通用性”,尽管通过设置看起来它只会为 Windows 10 构建。

我没有做任何愚蠢的错误意思,我正在编译 x64 等等......

我开始认为 WDK KMDF 基本模板可能存在某种问题。

我宁愿不必破坏旧项目(驱动程序)来加载成功的“新”驱动程序。

0 投票
1 回答
1347 浏览

c - Windows 虚拟 HID 框架 VhfCreate 方法返回 STATUS_INVALID_DEVICE_REQUEST

我正在努力在 Windows 10 中创建虚拟 HID 设备。我正在尝试使用 Windows 虚拟 HID 框架(如此处所述:https ://msdn.microsoft.com/en-us/library/windows/hardware/ dn925056(v=vs.85).aspx ) 构建驱动程序。在我目前的阶段,我正在努力让驱动程序正确安装在 Windows 10 虚拟机上。我的驱动代码如下:

对于额外的上下文,这是我的 .inf 文件:

我已经尽可能地遵循了我链接到的指南,但是对 VhfCreate 的调用正在返回 STATUS_INVALID_DEVICE_REQUEST。我想知道什么会导致 VhfCreate 返回此错误,以及如何修复它。