Loading

驱动开发环境搭建

 

主要参考这篇文章 http://mzf2008.blog.163.com/blog/static/35599786201153041849451/

配置好了之后就可以直接进行开发了,顺手写了一个helloWorld的驱动程序

编译正确执行,但是加了一行代码之后发现编译出错,

 

 1 --------------------Configuration: MyDriver - Win32 Debug--------------------
 2 Compiling...
 3 cl : Command line warning D9002 : ignoring unknown option '/MLd'
 4 MyDriver.c
 5 C:\WinDDK\DriverCode\MyDriver\MyDriver.c(11) : error C2275: 'NTSTATUS' : illegal use of this type as an expression
 6         C:\WinDDK\7600.16385.1\inc\api\ntdef.h(778) : see declaration of 'NTSTATUS'
 7 C:\WinDDK\DriverCode\MyDriver\MyDriver.c(11) : error C2146: syntax error : missing ';' before identifier 'status'
 8 C:\WinDDK\DriverCode\MyDriver\MyDriver.c(11) : error C2065: 'status' : undeclared identifier
 9 C:\WinDDK\DriverCode\MyDriver\MyDriver.c(12) : error C2065: 'status' : undeclared identifier
10 执行 cl.exe 时出错.
11 
12 MyDriver.obj - 1 error(s), 0 warning(s)

 

在源码目录下写入sources文件如下:

1 TARGETNAME=MyDriver
2 TARGETTYPE=DRIVER
3 INCLUDES=$(BASEDIR)\\inc
4 SOURCES=MyDriver.c

命令行下build编译,出错,查看错误信息如下

 

1>c:\winddk\drivercode\mydriver\mydriver.c(11) : error C2275: 'NTSTATUS' : illegal use of this type as an expression

以后要多搜集常见的错误提示信息:

illegal use of this type as an expression (类型用作表达式违法)

这种错误常见的原因是.c文件没有把声明放在函数的最前面,于是把声明放在函数头就好了。

 

posted @ 2015-12-12 00:25  Lnju  阅读(193)  评论(0)    收藏  举报