NDIS6过滤驱动开发实践与问题解析

5星 · 超过95%的资源 需积分: 50 58 下载量 13 浏览量 更新于2023-06-09 3 收藏 3.71MB PDF 举报
本文档是一系列关于NDIS中间层过滤驱动的开发笔记,由作者yexin218撰写,共49篇,涵盖了从基础知识到实践技巧的广泛内容。这些笔记主要围绕NDIS(Network Driver Interface Specification,网络驱动接口规范)6.0版本,探讨了驱动开发过程中的关键环节和技术细节。 1. 驱动开发部分深入解析了如何利用PassThru模式扩展NDIS中间层驱动程序,包括逐步升级的技术实现步骤,如添加对WinDBG(Windows Debugger)和VMware环境的调试支持,以及处理特定问题如VirturalWiFi在Vista下的编译问题和无线网络管理。 2. 知识点还包括INF文件的配置,例如设计和理解驱动的安装过程,以及调试工具的使用,如DebugView的问题解决方法和SamplePingPacketDecode的示例。此外,还介绍了处理像GetLastError返回值0x5这样的常见问题,以及如何有效地执行ioctl_NDIS_QUERY_GLOBAL_STATS操作。 3. 进一步的学习路径涉及Windows 7内核驱动的调试,包括使用VMware和Windbg进行深度调试,并且针对特定问题如蓝屏故障,提供了Filter发送OID请求的解决方案。作者还分享了对Win7NativeWiFi的理解和实践,如创建MAC地址的过程。 4. 在开发过程中,作者也关注了可能遇到的警告和错误,如WDK中的警告处理,以及如何编写和管理驱动的编译过程。例如,如何在FilterAttach中合理分配NetBufferListPool,以及如何处理DRIVER_CORRUPTED_EXPOOLbug。 5. 除了技术层面,笔记还讨论了中断请求的级别、基于NDISFilter的数据抓包,以及如何处理大数据传输时MDL(Memory Descriptor List)的使用策略。此外,还涉及如何通过InsertHeadList和CONTAINING_RECORD等高级函数进行数据结构操作。 这些笔记不仅适用于NDIS过滤驱动的入门开发者,也对有经验的工程师提供了实用的参考和疑难解答,是深入了解和掌握NDIS6中间层驱动开发的重要参考资料。整个系列详实全面,旨在帮助读者提升技能,解决实际开发中的问题。