关闭

<WP7>手机通过USB与电脑服务端通过socket交互

2424人阅读 评论(5) 收藏 举报

从我的网易博客移动过来的。。。


练习写window phone的socket时,发现了个很奇怪的问题。在模拟器能通过socket连接到电脑服务端。但是到了用USB连接的硬件(手机HTC T8788)时,发现不能和电脑服务端通过socket交互。电脑确认了zune已经打开。手机也能通过USB线从电脑的网络上网。但是这样socket连接出问题了。。

 

经过研究,才发现是电脑服务端的问题。电脑服务端用C#写的普通的window窗口程序。创建socket,到Bind时出了问题。我绑定的是本机IP。

IPEndPoint localEP = new IPEndPoint(ipHostInfo.AddressList.First(), 8888);
这样的话,在模拟器上可以连接。连接的IP写的也是本机IP。但是部署到了硬件手机的时候就出问题了。压根就连接不上。多次尝试才发现。
绑定本机IP模拟器能够连接,但是手机不能通过USB线连接。
绑定127.0.0.1时手机能够通过USB线连接。但是模拟器不能连接。
所以不能单一直接绑定本机的IP或者是127.0.0.1,而且手机应用连接的IP也要填写的是本机IP。
电脑服务端IP设置:
 int port = Convert.ToInt32(TBPort.Text);
 IPEndPoint endPoint = new IPEndPoint(IPAddress.Any,port);//绑定随意的本机IP。
 _socket.Bind(endPoint);


手机界面:
 
这样,无论是模拟器还是部署到手机的客户端都可以通过socket和电脑上的服务端交互了

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:276932次
    • 积分:2994
    • 等级:
    • 排名:第11707名
    • 原创:62篇
    • 转载:6篇
    • 译文:0篇
    • 评论:136条
    我的其他博客
    最新评论