gpt4 book ai didi

c - 启动 Windows 驱动程序时出错 : The handle is invalid

转载 作者:可可西里 更新时间:2023-11-01 11:54:41 25 4
gpt4 key购买 nike

我是一名 Web 开发人员,决定涉足内核模式开发。我安装了 WDK 8.1、Visual Studio Professional 2013,并设置了 Windows 7 VM 来调试和测试我的驱动程序。

我从 this tutorial 开始

我下载解决方案并构建驱动程序。我无法执行教程中描述的部署步骤,因此我尝试使用 OSR Driver Loader 安装驱动程序

我能够注册驱动程序,但是当我尝试启动它时出现以下错误。

C:\Windows\system32>sc 启动 KmfSmall

[SC] 启动服务失败 6:

句柄无效。

这是驱动程序的代码:

#include <ntddk.h>
#include <wdf.h>

DRIVER_INITIALIZE DriverEntry;
EVT_WDF_DRIVER_DEVICE_ADD KmdfSmallEvtDeviceAdd;

NTSTATUS DriverEntry(_In_ PDRIVER_OBJECT DriverObject, _In_ PUNICODE_STRING RegistryPath)
{
NTSTATUS status;
WDF_DRIVER_CONFIG config;

KdPrintEx((DPFLTR_IHVDRIVER_ID, DPFLTR_INFO_LEVEL, "KmdfSmall: DriverEntry\n"));
WDF_DRIVER_CONFIG_INIT(&config, KmdfSmallEvtDeviceAdd);
status = WdfDriverCreate(DriverObject, RegistryPath, WDF_NO_OBJECT_ATTRIBUTES, &config, WDF_NO_HANDLE);
return status;
}

NTSTATUS KmdfSmallEvtDeviceAdd(_In_ WDFDRIVER Driver, _Inout_ PWDFDEVICE_INIT DeviceInit)
{
NTSTATUS status;
WDFDEVICE hDevice;
UNREFERENCED_PARAMETER(Driver);

KdPrintEx((DPFLTR_IHVDRIVER_ID, DPFLTR_INFO_LEVEL, "KmdfSmall: KmdfSmallEvtDeviceAdd\n"));
status = WdfDeviceCreate(&DeviceInit, WDF_NO_OBJECT_ATTRIBUTES, &hDevice);
return status;
}

最佳答案

我花了一个星期左右的时间试图解决这个问题,然后才回答似乎是同一个问题。

基本上归结为缺少 KMDF 版本的项目设置。

问题:Why am I getting Error Code 6 on StartService?
答:https://stackoverflow.com/a/23705329/2487257

关于c - 启动 Windows 驱动程序时出错 : The handle is invalid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20304026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com