| 
			 
					阅读:2897回复:2
				 
				[求分析帝]Hidd_GetFeature操作系统死机
					简单来说, 
							执行如下代码 for(int i=0;i<100;i++) { ret = HidD_SetFeature(hDev,inputBuff,length); while (!ret) { ret = HidD_GetFeature(hDev,outputBuff,length); } } 执行期间拔出设备,操作系统会直接死掉,不是蓝屏,像是内核跑死了。 但单步调试时执行到 HidD_GetFeature函数拔出设备也不会死,全速跑的时候一把设备基本就挂了。 手里有别人做得相同功能的软件,但没有源码,同样的设备别人的不会死,Bus Hound从数据上也未见异常。 有没有高人遇到过这种问题?怎么处理或规避?  | 
	|
| 
			 沙发# 
								发布于:2010-04-08 09:53				
			
					终于有人回了,激动.... 
							PS:一种加密设备,走的是HID协议固件交互用的SetFeature,产品需要往里下载一些必要的程序。 主要是别人做的工具跑的过程中拔出设备不死,我做的工具开始交互的时候拔出就死。在HidD_GetFeature的后面加过一个Sleep(100),这样在操作虽然不会死,但下载速度也也随之降下来了,没有意义。 大家在用HidD_Get/SetFeature的时候都有没有什么保护措施?  | 
	|
| 
			 板凳# 
								发布于:2010-04-07 16:32				
			用户被禁言,该主题自动屏蔽! 				 | 
	|