森林清风 发表于 2017-5-27 10:43:35

请教使用AU3编程的方法可以关闭或者打开指定的计算机端口吗?比如135、137等端口?

本帖最后由 森林清风 于 2017-5-27 10:44 编辑

如题。不知是否可以做的到?先谢了。

Alam 发表于 2017-5-27 19:14:47

调用CMD命令能做到.
直接修改注册表值应该也能够做到吧.

py_hgx 发表于 2017-5-27 20:58:29

是吗,有具体的方法么?

nmgwddj 发表于 2017-5-27 23:43:18

这里有一些概念性的东西跟楼主说一说,虽然可能对你问题没有直接的帮助,但我觉得这是你未来解决这个问题必须要理解的内容。
端口不是瓶盖,不是你想打开就打开,想关闭就关闭的。端口是操作系统预留给软件进行通讯使用的,要发送一个数据到另外一个电脑或程序,必须要知道对方的 IP 地址和 端口信息。IP 决定了是哪台电脑,而端口决定了是哪台电脑上的哪个程序。
那么这个接收数据的程序就必须要“监听”用来接收数据的端口,比如 A 电脑想往 B 电脑的 QQ.exe 程序发个数据,那么需要知道 B 电脑 IP 是 192.168.2.1,并且 B 电脑 QQ.exe 监听了 10005 端口,那么 A 电脑就可以给 192.168.2.1:10005 发送数据,这样 B 电脑 QQ.exe 就接收到数据了。
这里你看到非常重要的一个概念就是监听端口,这个端口不是打开或者关闭,而是监听,监听后就能接收数据。你所谓要关闭某个端口,那么这个端口一定是被某个程序监听着,通过 Windows 下命令行 netstat -ano 可以看到当前哪些进程监听了哪些端口。如下图:



上图中,本机 0.0.0.0:135 端口被进程 PID 为 796 的进程监听着,那么我们看一看 PID 为 796 的进程是什么,如下图:



通过上图可以看到,进程 PID 为 796 的程序是 svchost,我们都知道系统有很多 svchost 进程,他们都是被服务程序调用起来的,给这个程序加不同的参数做不同的事情,我们看这个进程的参数是 PRCSS,然后我们到服务列表中去找这个服务。如下图:



这个服务中的启动参数,和我们进程看到的启动参数是一样的,你应该从这个位置下手,看看为什么 PRCSS 会占用 135 端口,系统预留了什么接口可以不让其监听(占用)135 端口,一旦你停止了这个服务或者不让其再监听135端口,那么本机的 135 端口从此关闭,任何其他程序都无法连接和访问,本机也无法通过 135 端口传递数据出去。更不可能其他电脑上的程序把你的 135 端口打开。

以上是正确的思路,希望对楼主有帮助。

lin6051 发表于 2017-6-7 08:37:50

cmd 用的是 系统防火墙 添加法吧
页: [1]
查看完整版本: 请教使用AU3编程的方法可以关闭或者打开指定的计算机端口吗?比如135、137等端口?