| 
			 
					阅读:963回复: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				
			参数引用错误,或类型不对,代码贴出来吧 小弟搞定了。。。。。 :) :) 就是您说的那个。。。。。。。。 不认真就是不行啊。。。 呵呵  | 
	|
					
						
  |