2012-12-04 142 views
0

我有这个驱动程序不会编译。我一直在网上搜索错误,并没有找到解决方案。有什么想法吗?错误建立Windows 7驱动程序

#include <wdm.h> 

VOID Unload(IN PDRIVER_OBJECT pDriverObject) 
{ 
    DbgPrint("Received signal to unload the driver"); 
    return; 
} 

NTSTATUS DriverEntry(IN PDRIVER_OBJECT pDriverObject, IN PUNICODE_STRING regPath) 
{ 
    DbgPrint("Driver has been loaded"); 
    (*pDriverObject).DriverUnload = Unload; 
    return(STATUS_SUCCESS); 
} 

错误下:

1>------ Build started: Project: KMDF Test, Configuration: Win7 Debug Win32 ------ 
1> Stamping Win7Debug\KMDFTest.inf [Version] section with DriverVer=12/04/2012,10.12.25.726 
1> cl wpp 
1>wpp : error : (WppCreateFile)Cannot open file trace.h, error 2 
2>------ Build started: Project: KMDF Test Package, Configuration: Win7 Debug Win32 ------ 
2>C:\Program Files\Windows Kits\8.0\build\WindowsDriver8.0.common.targets(1347,5): error MSB3030: Could not copy the file "C:\Users\Administrator\documents\visual studio 2012\Projects\KMDF Test\Win7Debug\KMDFTest.sys" because it was not found. 
========== Build: 0 succeeded, 2 failed, 0 up-to-date, 0 skipped ========== 
+0

这是您的驱动程序使用的WPP日志记录机制的错误。您发布的代码与此无关。 – SomeWittyUsername

+0

那么,我该如何解决它? –

+0

从发布相关代码开始。并在网上做一个体面的搜索。这是搜索结果中出现的第一个链接:https://www.osronline.com/showthread.cfm?link=228192 – SomeWittyUsername

回答

0

也许你没有选择正确的驱动程序模板?

当我同时使用KDM和KDMF模板来创建驱动程序的项目,我遇到了同样的错误,你....所以...

您可以创建一个新项目,并选择“空WDM驱动程序”模板,那么一切都会好起来的。

如果您确实想使用WPP,以下链接可能会有所帮助。 Supporting WPP Tracing (Windows Drivers)

11

这是我如何解决了这个问题:

在解决方案资源管理器窗口中,右键点击驱动程序项目,然后选择属性。在Wpp跟踪>所有选项中,将运行Wpp跟踪设置为否。单击确定。

Sami

1

你最终修复了这个问题吗?您的项目很可能无法找到您的trace.h文件。如果你正在使用Visual Studio,然后在项目设置下检查:

配置属性 - > WPP跟踪 - >文件选项 - >扫描配置数据

确保文件路径是正确的。如果它只是说trace.h,那么请确保trace.h与项目文件在同一个文件夹中。

如果你不需要做追踪,那么萨米的答案就是一样的好。

0

步骤来解决问题:

  1. 搜索和获取trace.h里投入项目文件文件夹或者提供路径。
  2. 在记事本替换KmdfSmallEvtDeviceAdd与KmdfHelloWorldEvtDeviceAdd
-1

开放* .vcxproj文件并注释以下行。

<!--  <WppEnabled>true</WppEnabled> 
     <WppScanConfigurationData Condition="'%(ClCompile. ScanConfigurationData)' == ''">trace.h</WppScanConfigurationData> 
     <WppKernelMode>true</WppKernelMode> --> 

然后我做了。它的工作..希望它可以帮助你。