阅读:1507回复:0
讨论一个vendor request的奇怪问题
我build了一个vendor request向设备发送请求,代码如下:
bResult = DeviceIoControl( hDevice, IOCTL_EZUSB_VENDOR_OR_CLASS_REQUEST, &MyRequest, sizeof(VENDOR_OR_CLASS_REQUEST_CONTROL), NULL, 0, (unsigned long *)&nBytes, NULL); if(!bResult) { CloseHandle(hDevice); AfxMessageBox("发送命令失败,请重试!", MB_OK); return; } 问题是: 当我在程序中的DeviceIoControl()函数上设断点,然后单步执行,那么获得的bResult是TRUE, 如果我不设断点,或者断点设置在别的位置,比如if(!bResult)上,那么得到的bResult是FALSE! 还有一种情况是我在设备固件程序中接收请求的地方设断点,当程序停下来后再运行,那么得到的bResult也是TRUE! 那位xdjm遇到过这种问题?给个建议,多谢。 |
|
最新喜欢:![]() |