【发布时间】:2014-07-07 22:55:24
【问题描述】:
我已将 python 2.7.1 嵌入到基于 C++ 的应用程序(果酱)中
从以下位置运行示例: https://docs.python.org/2/library/socket.html
输入
import socket
socket.getaddrinfo("www.python.org", 80, 0, 0, socket.SOL_TCP)
返回
[(2, 3, 3, '', ('23.235.47.175', 0))]
DEBUG:
SOCKET: s3eInetAton: 'www.python.org'
SOCKET: s3eInetLookup: 'www.python.org'
SOCKET: s3eInetLookup (synchronous): done DNS: '23.235.47.175:0'
IWCRT: gethostbyname www.python.org -> 4a700360
不过应该是这样的,端口不等于0
[(2, 1, 6, '', ('xx.xx.xx.xx', 80)]
与 getaddrinfo 相同:
输入
import sys, socket
result = socket.getaddrinfo("python.org", None, 0, socket.SOCK_STREAM)
for item in result:
print (item[4])
返回
('140.211.10.69', 0)
('xx.xx.xx.xx', 80)
还是没有端口
- 我已经在主目录之外运行了脚本
- 我已经梳理了 pyconfig.h 看看是否缺少任何设置(我看到了)
- 我搜索了一个常见的 python 套接字设置列表,但找不到(你会认为这很容易)
有什么可能导致这种情况的想法吗?
【问题讨论】:
标签: python c++ embedded port marmalade