首页
社区
课程
招聘
大伙都在什么环境下编译驱动啊?
发表于: 2014-10-3 10:05 4455

大伙都在什么环境下编译驱动啊?

2014-10-3 10:05
4455
最近才学驱动,对抗原理略懂了一二,但如何编写驱动,十分不顺手。

比如我用wdk自带的demo作为模版,新建2008空工程,添加c和h,然后用wdk的命令行编译通过。

但我添加自己的h文件和c文件之后,在主c中调用辅c中的函数,就会报错,但据说c语言编译是不用包含头文件的。

后来我尝试的包含了辅c的头文件之后,变成链接错误了。

我知道驱动目录中有个 SOURCES 文件,里边有一行:

SOURCES=event.c \
        event.rc

我看了V校的代码,他的文件中就有很多他工程的c。
是不是我需要手动将自己新建的c文件都写到这里边去?
但是我添加后还是报一样的错。

不知道我在驱动工程中新建c和h应该怎么办?

C\C++我都只是简单应用,不熟悉编译原理。还望大牛解惑。

问题已自行解决:
1.调用其他c文件的函数,需要包含其头文件,或声明函数。
2.链接出错导致的原因,需要包含<ntddk.dll>。

ps:
两个错误结合在一起把我搞混了,果然还是基础不够扎实,排错能力低下。
无奈很多错误都是没人能帮的上忙的,没人愿意帮你分析,告诉你原理,除非他心情好。
所以给其他新手建议,学海无涯,耐住寂寞,感谢所有给过你帮助的人。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 5
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
VC6 WDK
2014-10-3 10:25
0
雪    币: 65
活跃值: (112)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
看你问的内容,实在又不中听点说的话,“还是先学好语言基础再说”。
2014-10-3 15:57
0
雪    币: 62
活跃值: (971)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
能否指明一下我是哪里思路不对,在r3下用c编写程序基本是没问题的,我知道函数本身是全局的,r3可以正常调用,但提示警告,添加头文件后无警告。但r0不知道哪里出问题了,各种修改测试也不通过。还望前辈给说一个大概或者方向。

另外我觉得技术是从实践中得来的,当我遇到问题的时候解决了,我会知道为什么会出错,也会更深一步。

如果“学基础”,说实话我不清楚应该怎样去学基础,是看书还是看视频?我觉得这些我都看不太懂,但是遇到错了,解决了,对书上说的话才有了理解。
2014-10-3 17:55
0
雪    币: 100
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
vc vs的环境搭建半天没搞清楚,只好用vc写,用wdk自带的编译了……
2014-10-6 13:10
0
雪    币: 49
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
vs2012+wdk8.0
你编的是nt还是什么框架,nt把package去掉
是不是用了c++的编译,extern “C”?
2014-10-6 16:17
0
雪    币: 35
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
自己写编译脚本,wdk自带编译器编译
2014-10-8 13:31
0
雪    币: 38
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
用easysys建立,vs2010编译
2014-10-12 20:58
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
9
VS2013+WDK8.1
2014-10-12 21:50
0
游客
登录 | 注册 方可回帖
返回
//