首页
社区
课程
招聘
[求助]学习驱动遇到不能声明变量的问题
发表于: 2009-6-1 23:59 4793

[求助]学习驱动遇到不能声明变量的问题

2009-6-1 23:59
4793
电脑中了病毒才想学驱动的,没有想到遇到了哭笑不得得问题。
具体

NTSTATUS DriverEntry(IN PDRIVER_OBJECT theDriverObject,
                                         IN PUNICODE_STRING theRegistryPath)
{

        UNICODE_STRING str;






。。



}
在DriverEntry声明一个UNICODE_STRING变量就报错
C:\Documents and Settings\Administrator\桌面\zcxc\Myntddk.c(345) : error C2275: 'UNICODE_STRING' : illegal use of this type as an expression
        D:\WINDDK\3790.1830\inc\wxp\ntdef.h(1095) : see declaration of 'UNICODE_STRING'

最后我解决的方法就是在DriverEntry例程的外面声明变量就可以编译成功了,
不知道这个错误是怎么回事。
我的坏境是 VC6.0 + Driver Wizard +DDK2003
如果需要我就把代码都付上来,代码都是很简单的入门,都是抄书上的。

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

收藏
免费 0
支持
分享
最新回复 (11)
雪    币: 221
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
太强了,学习!
2009-6-2 00:07
0
雪    币: 114
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
全局变量?     
2009-6-2 01:00
0
雪    币: 359
活跃值: (41)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
你是不是C++写多了,写C时忘了把声明放到函数头部?
2009-6-2 09:30
0
雪    币: 63
活跃值: (17)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
5
现在学驱动的语言关都没过....
2009-6-2 12:31
0
雪    币: 170
活跃值: (90)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
6
贴代码
2009-6-2 13:23
0
雪    币: 217
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
"我的坏境是 VC6.0 + Driver Wizard +DDK2003"
LZ说的“Driver Wizard”是什么东西?到哪去下载?
2009-6-2 15:01
0
雪    币: 348
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
  先学好语言吧

贴代码看看
2009-6-2 15:17
0
雪    币: 446
活跃值: (758)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
9
初始化就行了
2009-6-2 15:51
0
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
怎么可能会忘记函数的声明!在函数内部同样可以声明局部变量的,我要用的是局部变量又不是全局变量,现在我得把所用的变量都声明为全局变量才能编译成功,同样,在虚拟机中运行直接死机了。应该是我的环境设置有问题。
2009-6-3 19:32
0
雪    币: 129
活跃值: (31)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
把变量声明放在函数的头部就行了....

你这个声明中间有了回车,函数头部和你变量声明中间有回车了,可能这样也不行!
2009-6-3 19:49
0
雪    币: 364
活跃值: (152)
能力值: ( LV12,RANK:450 )
在线值:
发帖
回帖
粉丝
12
他说的很清楚,可能你的编译器是C方式的,要求把变量都申明 在函数开始处。
2009-6-3 19:50
0
游客
登录 | 注册 方可回帖
返回
//