阅读:903回复:4
编译问题一问!
用build -cZ 产生的一下几个错误,不知道什么原因??
请假各位大侠。。。 出错信息如下: power.cpp(80) : error C2440: '=' : cannot convert from 'long (__cdecl *__ptr64 )(struct _IRP *__ptr64 ,struct DEVICE_EXTENSION *__ptr64 )' to 'long (__cdecl *__ptr64 )(struct _DEVICE_OBJECT *__ptr64 ,struct _IRP *__ptr64 ,void *__ptr64 )' power.cpp(102) : error C2440: '=' : cannot convert from 'void (__cdecl *__ptr64 )(struct _IRP *__ptr64 )' to 'long (__cdecl *__ptr64 )(struct _DEVICE_OBJECT *__ptr64 ,struct _IRP *__ptr64 ,void *__ptr64 )' power.cpp(149) : error C2664: 'PoRequestPowerIrp' : cannot convert parameter 4 from 'void (struct _IRP *__ptr64 )' to 'void (__cdecl *__ptr64 )(struct _DEVICE_OBJECT *__ptr64 ,unsigned char,union _POWER_STATE,void *__ptr64 ,struct _IO_STATUS_BLOCK *__ptr64 )' power.cpp(194) : error C2556: 'int __cdecl SetPowerState(struct DEVICE_EXTENSION *__ptr64 ,enum _DEVICE_POWER_STATE)' : overloaded function differs only by return type from 'void __cdecl SetPowerState(struct DEVICE_EXTENSION *__ptr64 ,enum _DEVICE_POWER_STATE)' power.cpp(194) : error C2371: 'SetPowerState' : redefinition; different basic types power.cpp(198) : error C2664: 'PoSetPowerState' : cannot convert parameter 3 from 'enum _DEVICE_POWER_STATE' to 'union _POWER_STATE' 谢谢指教啊。。。。 有帮助的另开贴多给分 :) :) |
|
|
沙发#
发布于:2005-01-17 17:06
好像是不同类型的指针函数相互赋值导致的错误
看看提示的那几行代码 |
|
|
板凳#
发布于:2005-01-18 08:24
顶一下
呵呵 'PoSetPowerState' : cannot convert parameter 3 from 'enum _DEVICE_POWER_STATE' to 'union _POWER_STATE' 为什么每次用这个函数总提示这样的错误?? 用个函数有什么限制吗? |
|
|
地板#
发布于:2005-01-18 08:27
参数引用错误,或类型不对,代码贴出来吧
|
|
|
地下室#
发布于:2005-01-18 09:35
参数引用错误,或类型不对,代码贴出来吧 小弟搞定了。。。。。 :) :) 就是您说的那个。。。。。。。。 不认真就是不行啊。。。 呵呵 |
|
|