阅读:1704回复:7
请教rayyang2000:
今日拜读了老兄的大作《10分钟完成一个USB驱动程序》,现有两个问题想向老兄请教:
1)PURB pUrb = m_Lower.BuildVendorRequest后是否应用delete pUrb来删除这个URB包? 2) m_Lower.SubmitUrb(pUrb, NULL, NULL, 5000L);若超时,是否还需要delete pUrb? |
|
|
沙发#
发布于:2001-09-01 10:45
Sorry.
漏了delete pUrb. 应该加在 status = m_Lower.SubmitUrb(pUrb, NULL, NULL, 5000L); 后面,否则就是内存泄漏. :) |
|
|
板凳#
发布于:2001-09-01 13:28
还要请教,对于m_Lower.SubmitUrb(pUrb, NULL, NULL, 5000L);
若超时,是否还需要delete pUrb。这时IRP应该发送到USBD.SYS中,若冒然删除URB,是否回产生异常? 但如果不在这里处理,那应该在何处处理? |
|
|
地板#
发布于:2001-09-01 19:11
我试验的结果是可以delete的,没有看到错误.或者可以设定完成历程, 不用设定超时.
|
|
|
地下室#
发布于:2001-09-04 21:14
请问老兄,你的驱动程序是使用DS开发的吗?
|
|
|
5楼#
发布于:2001-09-06 09:21
yes
|
|
|
6楼#
发布于:2001-09-06 12:29
我怎么delete pUrb时报错?
而且是系统蓝屏,在SoftIce下是0E。 |
|
|
7楼#
发布于:2001-09-06 16:43
[QUOTE]原本由 LitteSW 发表
[B]我怎么delete pUrb时报错? 而且是系统蓝屏,在SoftIce下是0E。 [/B][/QUOTE] 我没有碰到。我在2k下。 |
|
|