NDIS_PACKET 的操作与修改问题

monk188 2008-05-28 10:28:45
晚辈在NDIS中间层开发一个协议。

协议要求,对NDIS中间层接口函数MiniPortSend截获的Packet进行修改,添入一块咱们协议定义的MyHeader。

MyHeader必须加在IPHeader的后边.

通过NdisGetFirstBufferFromPacketSafe,NdisGetNextBuffer,NdisQueryBuffer等函数到时可以对包中的内容进行修改。但是要在此原始包中加入MyHeader,就必须重新创建一个Mybuffer,然后用MyBuffer替换原始包中包含IPHeader的buffer。

现在我程序出现的问题是:调用NdisFreeBuffer函数对原始包替换下来的buffer进行释放的时候,发生异常,整个程序都跑不起来。
然后换了一种方法,使用NdisFreeMemory分别释放buffer中指针和buffer。
这样处理程序到时可以跑起来,但是跑着跑着内存又溢出了。

请各位前辈,帮我看看,这是怎么回事。
...全文
123 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
MaxDOS 7.1 说明文件 关注新版,意见建议请到 Http://MaxDOS.Net 或 Http://Pzz.Cn =============================================================================== 集成DM/PQ版,支持Windows Vista/Server 2008版,U盘版,PXE版,光盘等其它的MaxDos7.1版 本,如果您需要以上版本,请关注我们的网站,感谢您的使用. MaxDOS 7.1 更新如下: 重要改进: 网刻服务端升级为 MAXNGS 2.0 修正网刻服务端同一时间内DHCP只能提供一个IP地址,第二台无汉获得IP地址. 修正DHCP分配 IP时,一台机器分配了两个IP.修正TFTP不能同时传送多个进程. 增加多网段功能,当使用大网段时,可设置超过多少台机器自动跳跃至下一网段,理论支持无 限台客户端,增加方案功能,当首次设置完毕后,方案将自动被保存,下次使用无需再次设置. MAXDOS客户端: 增加新的引导器,主要用于解决某些特殊的主板,或者某些特殊的芯片组引导问题, 特别是针对笔记本无法引导的问题,以及原来7.0 版的启动花屏,或启动重启等现像的修正. 增加对64位操作系统的支持,主要为 64位的VISTA和2008SERVER的支持问题. 增加对繁体中文操作系统的支持,繁体中文操作系统可正常显示繁体文字. 增加软件的兼容性,增加备份目录创建是否成功提示,以免一键还原失效. 改进Realtek TEL8169网卡驱动问题. 增加部份新的网卡驱动. 修正NVDIA自动识别网卡时卡住,改为提示手动加载. 增加NDIS驱动手动选择菜单. 修正自动网刻时,使用手动加载网卡驱动时会报错问题. 收入置顶贴中的网卡驱动收集贴的驱动至12月10日.更新内置的常用软件. 更新控制台为 2.0 可显示引导模式状态,及增加引导器新老版本的切换功能. 友情提示,如果你的主板为NVIDIA芯片组,而不能识别网卡的,请尝试使用手动加NVIDIA驱动. 还有其它功能,未能一一列出. =============================================================================== 软件特色功能如下: 1. 为装好的Win2K/XP/2K3/VISTA/2008系统加入DOS入口,方便维护与备份还原系统. 2. 支持进入DOS时设置密码,密码采用MD5加密,纯绿色软件,不写引导区. 3. 内置200多种网卡驱动,实现GHOST网络刻隆及DOS下访问局域网的共享资源. 4. 全中文的操作方式,让您使用时更简单,支持DOS下显示中文及五笔拼音输入. 5. 完全傻瓜化的网刻模式,让没用过本软件的用户也能轻松实现网刻. 6. 支持引导自已制作IMG镜像,并且支持引导自己制作的无限大小IMG镜像. 7. 全自动化的中文一键恢复/备份,让您备份/恢复系统时更简便. 8. 支持系统盘为NTFS分区,支持读取. 修改. 删除. 复制NTFS分区内容. 9. 内置软件如:NT系统密码清除,DISKGEN. SPFDISK. Ghost等软件. 10.支持DOS驱动SATA. SCSI. 1394. USB. PCMCIA等设置,可直接在DOS下访问. 11.首家独创全面支持nVIDIA全系列网卡网刻,更多精采内容请查阅“说明文件”. =============================================================================== MaxDOS 7.1  使用前注意事项及常见问题: 重要1: 如果您的机器中同时安装了双系统并且有VISTA或2008系统,请勿必在您的VISTA或 2008系统中安装MaxDOS否则可能不能正常启动MaxDOS,请至我们网站下载专用版本. 重要2: 7.1 版需要专用网刻服务端支持,网刻前请先下载网刻服务端,并且设置好服务端后方 能进入客户端网刻,服务端下载及网刻教程地址 http://pzz.cn/bbs/read.php?tid=50400 网刻前请先关闭局域网中的其它DHCP服务器,以免出现IP分配冲突,造成连接不上服务端. 重要3: 7.1 版的Max防病毒功能需要专用的防病毒控制服务端,如果您安装了防病毒客户端后 请至我们的网站 http://pzz.cn/bbs/read.php?tid=50433 中下载专用的防病毒服务端方 能实现防病毒功能,如果您不需要该功能可以控制面板中的添加删除程序中卸载. 重要4: 7.1 版中的Max防病毒功能主要针对网吧或企

19,502

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧