阅读:2787回复:6
基础问题:关于must point to class/struct/union
我使用DriverStudio生成u盘驱动得框架后使用vc在入口函数DriverEntry()出添加代码如下:
NTSTATUS MyDriver2003::DriverEntry(PUNICODE_STRING RegistryPath) { DriverObject->MajorFunction[IRP_MJ_CREATE] = Create; ..... } 编译sys文件时提示: F:\driver\MyDriver2003\sys\MyDriver2003.cpp(64) : error C2227: left of '->MajorFunction' must point to class/struct/union F:\driver\MyDriver2003\sys\MyDriver2003.cpp(64) : error C2065: 'Create' : undeclared identifier 怎么回事?应该怎样修改?(注:整个框架是DS默认生成的,我只写了上面提到的代码!)环境:win2003,2000ddk,ds3.1 |
|
沙发#
发布于:2004-04-08 17:40
DriverObject 的定义对不对,create有没有定义,或者定义的位置对不对
|
|
板凳#
发布于:2004-04-08 17:42
DriverObject好像是ds库自带的,create是ds默认生成由的
|
|
地板#
发布于:2004-04-08 17:42
我的qq:2377838
email:laymanly@sina.com |
|
地下室#
发布于:2004-04-08 17:43
在线等待中。。。。
|
|
5楼#
发布于:2004-04-09 23:35
我自己顶!
|
|
6楼#
发布于:2004-04-10 11:39
DriverObject就算是库自带的也要声明呀,又不是全局变量
如下: 我的是: PDEVICE_OBJECT DeviceObject = NULL; 也许你的应该是: PDRIVER_OBJECT DriverObject = NULL; DriverObject->MajorFunction[IRP_MJ_CREATE] = Create; |
|