我正在尝试执行一个简单的套接字通信脚本,并在尝试使用命令提示符运行脚本时遇到一些困难。我使用的是Windows 7 64位和Python 2.7.5 AMD 64.
当我使用IDLE执行它时,脚本运行正常,但是当使用命令提示符时,它只是坐在那里歪着它的拇指。
以下是我用来尝试解决问题的代码:
from socket import *
print "Hello World"
tcp_ip = '192.168.1.241'
tcp_port = 2001
buffer_size = 11
plc_socket = socket(AF_INET, SOCK_STREAM)
plc_socket.bind((tcp_ip, tcp_port))
plc_socket.listen(1)
socket_conn, socket_addr = plc_socket.accept()
print "Connection Accepted"
socket_conn.shutdown(1)
plc_socket.close()
当我使用命令行运行代码时,我会得到“Hello World”,它会在SOCKET_CONN,SOCKET_ADDR行之前执行所有操作,然后就在那里。
我已经完成了以下工作:
对此事的任何智慧都将不胜感激。
答案 0 :(得分:0)
问题已经解决了。
事实证明,当脚本由命令行运行或直接执行时,本地网络防火墙阻止了TCP / IP连接。
我关闭了防火墙,脚本运行得很好。