这个程序使用Windows CE的SPI函数实现对应用层的网络调用的过滤,示范在Windows CE上对UDP 8000端口的数据报的过滤功能。 程序是www.vckbase.com上《基于SPI的数据报过滤原理与实现》的翻版,特别感谢TOo2y无私的共享。 测试的时候,把ceipfilter.dll放到根目录下,运行SPIFilterTest,然后按下Install,将安装这个传输服务提供者。这个时候,运行UDPTest,可见在初始化SOCKET的时候,调用了ceipfilter,在8000端口收发数据时,ceipfilter将提示8000端口数据被过滤。特别注意的一点,WindowsCE上没有WSCWriteProviderOrder函数,所以无法把自定义的服务提供者排在所有协议的最前列,但是没有关系,依然可以拦截大部分使用了这个之下的协议的程序的数据。也许有人会用这个在CE上做些木马来捣乱,这个类型的木马,只要它没有做更深层次的工作,发现它还是比较简单的,使用任务管理器打开使用网络的程序,查看进程模块,在这个例子里面,ceipfilter.dll就现身了。更深层次的工作做这个的高手都知道是什么,我也不便发表了,免得用到坏的地方。