请帮助将这部分代码单独提取出来,禁用网络端口这部分代码。

gfugfu 2003-09-05 11:41:25
下载地址:
http://auto.wst.net.cn/Port_Spy.rar

这个是一个非常好的网络监控源代码,其中包含禁用网络端口,请帮助将这部分代码单独提取出来,禁用网络端口这部分代码。
...全文
175 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Gelim 2003-09-06
  • 打赏
  • 举报
回复
楼主,我怎么down不了啊!
frankgy 2003-09-06
  • 打赏
  • 举报
回复
昨天我又看了一下Port_Spy.rar其中只能控制TCP/ICMP连接而对SMTP/POP3, UDP, and IPX/SPX好象不行,
其中控制开启关闭端口主要是调用了两个iphlpapi.dll中的api,
GetTcpTable及SetTcpEntry
其中的 GetTcpTable函数能返回当前系统中全部有效的 TCP连接。其定义为:
DWORD GetTcpTable(
PMIB_TCPTABLE pTcpTable, // buffer for the connection table
PDWORD pdwSize, // size of the buffer
BOOL bOrder // sort the table?
);

其中参数一是 TCP连接表缓冲区的指针,参数二是缓冲区大小(当缓冲区不够大时,该参数返回实际需要的大小),参数三指示连接表是否需要按“Local IP”、“Localport”、“Remote IP”、“Remote port”依次进行排序。

而 SetTcpEntry函数可以删除连接。其定义为:
DWORD SetTcpEntry(
PMIB_TCPROW pTcpRow // pointer to struct. with new state info
);
在调用此函数之前,应将欲删连接的状态置为 MIB_TCP_STATE_DELETE_TCB(删除)。MIB_TCP_STATE_DELETE_TCB也是目前唯一可在运行时设置的状态。

程序中放了一个定时器,定时检测连接,如果检测到的连接所用的端口是你要关闭的端口则立即调用settcpentry将其删除,达到所谓"关闭"端口听目地.

在源程序的frmMain中有一个定时器事件
Private Sub tmr1_Timer() '
CheckTcp
End Sub
其是CheckTcp就是用于这一目的的.
其中你所说的关闭端口的程序就是CheckTcp 此程序在模块NetStat.bas中.
Garfield 2003-09-05
  • 打赏
  • 举报
回复
楼主还在孜孜不倦的追求VB禁网的方法?
我看还是死了这条心吧。。

我昨天看了一下资料,看到这么一段话:

Windows下的个人防火墙都是基于对数据报的拦截技术之上。当然在具体的实现方式上它们却有很大的不同。总的来说可分为用户级和内核级数据报拦截两类。其中内核级主要是TDI过滤驱动程序,NDIS中间层过滤驱动程序,NDIS过滤钩子驱动程序等,它们都是利用网络驱动来实现的;而用户级的过滤包括SPI接口,Windows2000包过滤接口等。




那就是说,完全禁止网络访问你还是必须开发驱动。
如果你用SPI,应该可以禁止TCP,UDP一类的东西。。但是别人还是能够ping你
gfugfu 2003-09-05
  • 打赏
  • 举报
回复
可以的阿,可以过滤外部的款口,也可以过滤本地端口,你可以试一下那大部分常用的本地端口过滤掉后,就不能开浏览器上网了
frankgy 2003-09-05
  • 打赏
  • 举报
回复
Port_Spy.rar中没有禁用网络端口的代码!只是过滤外来IP对你端口的访问,并有如果你禁用了这个外来的IP,他还可通过代理来访问你的端口,据我所知,没有办法专门关闭一个端口,防火墙通常也都是对端口进行过滤,即通过防火墙将信息挡在外面,而不是真正关闭了端口.
girl888 2003-09-05
  • 打赏
  • 举报
回复
不知道
yijiansong 2003-09-05
  • 打赏
  • 举报
回复
看看
dary_zhou 2003-09-05
  • 打赏
  • 举报
回复
我去看看
imur 2003-09-05
  • 打赏
  • 举报
回复
up

1,502

社区成员

发帖
与我相关
我的任务
社区描述
VB 网络编程
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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