2014-01-09 264 views
2

我想写一个简单的驱动程序。使用此的Hello World代码:Windows设备驱动程序

#include <ntddk.h>  
NTSTATUS DriverEntry(IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath) 
{ 
    UNREFERENCED_PARAMETER(DriverObject); 
    UNREFERENCED_PARAMETER(RegistryPath); 
    DbgPrint("Hello World\n"); 
    return STATUS_SUCCESS; 
} 

但我得到这个错误:

Error 1 error -2: "Inf2Cat, signability test failed." Double click to see the tool output. 

我不知道这意味着什么。 我使用Win7 Debug配置设置。

+0

我禁用了Inf2Cat。这似乎工作。我可以编译并生成一个.sys文件。 现在,当我尝试使用OSRLoader加载它时,我得到'此驱动程序已被阻止加载' –

回答

2

我提出了类似的计划,它为win7的调试配置

#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; 
} 

也可以查看猫文件的任何64位装饰错误

+0

好吧,我设法使用您的代码构建.sys文件。我必须禁用“将警告视为错误”。我会如何测试这个驱动程序? –

+0

现在来测试你需要运行这个作为服务 – dips

+0

确保启用测试模式,如果使用win7的64位+ OS 要做到这一点, 安装osrloader软件,然后 给出的路径为您的sys文件 那么这个伪驱动程序注册服务 那么,如果你想看到调试输出,打开WinDbg,从而使管理员 检查内核调试 然后从osrloader – dips

0

解决方案是项目 - > propeties-> ConfigurationProperties-完全正常> inf2Cat->常规 - >使用本地时间 - >是