最近刚开始学驱动编程,看到取消IRP一节时有些地方不明白,希望大家能帮帮忙...谢谢
我看的例子代码中:
首先把挂起的IRP的指针都加入进 一个链表中....当关闭设备时,再把链表中所有的IRP设置为完成,最后退出.疑问1:如果在退出前 链表中的某IRP已经完成了,那么最后关闭设备时再把IRP设置为完成 有没有问题?疑问2:IRP的生存周期,是一直到设备关闭为止吗?因为如果不是的话,那么当链表中的某IRP完成时,它可能会被
清除吧,那么到最后 再通过指针设置这个IRP为完成状态...不就内存访问违规了吗?
我看的例子代码中:
首先把挂起的IRP的指针都加入进 一个链表中....当关闭设备时,再把链表中所有的IRP设置为完成,最后退出.疑问1:如果在退出前 链表中的某IRP已经完成了,那么最后关闭设备时再把IRP设置为完成 有没有问题?疑问2:IRP的生存周期,是一直到设备关闭为止吗?因为如果不是的话,那么当链表中的某IRP完成时,它可能会被
清除吧,那么到最后 再通过指针设置这个IRP为完成状态...不就内存访问违规了吗?
解决方案 »
- VC怎么传递数组的指针?
- WinCE下,如何基于winsock实现SSL???
- 一个关于在桌面上双缓冲输出文字的问题
- 数组元素越界了,每次运行应该为不同的随机数吧,为何每次运行都是一样的样? 我理解每次运行都会不同,但是每次都是固定的?
- socket接收ip包问题
- 关于SDK中消息处理的两个小问题
- 【求助】释放dll的一些问题
- jpg 图象特效问题
- 怎么将一个工程中的部分资源在另一工程中使用?
- BringWindowToTop 后怎么恢复?不让他在最顶层?
- 小弟初学VC 编了一个贪吃蛇小游戏,但是想固定 游戏视图图的大小,
- CObList对象销毁后,它曾包含的对象指针所指向的内存是否自动释放?
当然你也不能这样去碰。