Win7下,准备写一个使用SOCK_RAW 监听网卡数据的程序,参考了一些例子,在调用WSAIoctl 时出错,返回10045 错误。
具体情况是如果IP 设为127.0.0.1 则不会出错,可正常运行。但是这样只能监听到部分UDP 数据。
如果IP 设为拔号得到的动态公网IP,则调用WSAIoctl 会返回10045 的错误。
使用错误查找工具,得到错误10045 的解释是:参考的对象类型不支持尝试的操作。
Google之,有人也有同样问题,最接近的答案是跟环境有关,WinXP 下似乎都没问题,Win7下有人可以,有人不行。
很不幸,我是那不行里面的。可能与VPN 驱动等有关。
更具体的原因有待进一步研究。
本文描述了在Windows 7系统中使用SOCK_RAW进行网络监听时遇到的问题及初步排查过程。当设置IP为127.0.0.1时程序能正常运行,但设置为动态公网IP时调用WSAIoctl出现10045错误。文中提及该问题可能与系统环境及某些驱动程序相关。

6583

被折叠的 条评论
为什么被折叠?



