【问题标题】:WDM Build with no INF?没有 INF 的 WDM 构建?
【发布时间】:2014-01-13 04:44:30
【问题描述】:

我正在尝试为 Windows XP Service Pack 3 构建非 pnp 驱动程序 (WDM)。我正在使用 Visual Studio 2013 和 WDK 8.1。代码非常简单直接(仅用于在 VM 上进行测试)。我唯一的问题是:

“Inf2Cat,可签名性测试失败。”

这里代码sn-p:

#include "DHSD.h"
#define _DRIVER_NAME_ "DHSD"

NTSTATUS DriverEntry(_In_ PDRIVER_OBJECT driverObject, _In_ PUNICODE_STRING regPath)
{
    UNREFERENCED_PARAMETER(regPath);
    driverObject->DriverUnload = DriverUnload;

    DbgPrint("Driver loaded.");

    return STATUS_SUCCESS;
}

VOID DriverUnload(_In_ PDRIVER_OBJECT driverObject)
{
    UNREFERENCED_PARAMETER(driverObject);
    DbgPrint("Driver unloaded.");
    return;
}

问题是我不想签署我的驱动程序,我也不想分发它,那么有什么解决方法吗?谢谢

【问题讨论】:

    标签: c++ driver visual-studio-2013


    【解决方案1】:

    您的软件包中缺少 KMDF 1.11 辅助安装程序 DLL。

    我做了类似的程序,效果很好

    #include "ntddk.h"
    
    #include "stdio.h"
    
    #include "stdlib.h"
    
    void DriverUnload( 
    
    PDRIVER_OBJECT pDriverObject) 
    
    {  
    
    DbgPrint("Driver unloading\n"); 
    }
    
    NTSTATUS DriverEntry( 
    
    PDRIVER_OBJECT DriverObject, 
    
    PUNICODE_STRING RegistryPath) 
    
    { 
    PDEVICE_OBJECT pdo;
    
    DriverObject->DriverUnload = DriverUnload; 
    
        DbgPrint("Hello, World\n"); 
    
    return STATUS_SUCCESS; 
    }
    

    还可以检查 cat 文件是否存在任何 64 位装饰错误

    【讨论】:

    • 我使用的是 WDM 驱动程序而不是 KMDF,coinstaller 是否仍然有效?
    【解决方案2】:

    您可以从解决方案中删除包项目,然后它应该可以工作。这是最快的“hacky”解决方案。

    【讨论】:

      猜你喜欢
      • 2011-09-29
      • 2012-01-31
      • 2011-10-31
      • 1970-01-01
      • 1970-01-01
      • 2015-06-20
      • 2022-12-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多