ACE_INET_Addrconnect: address not available 问题的解决
ACE_INET_Addrconnect: address not available 问题的解决
黄国强 2015/2/4
这几天要写一个多机通讯的程序,所以看了ACE。
1 问题背景
- ACE版本 6.1.9
- Win7 x64
- MS VS2008
2 遇到的问题
打开 ace\ACE-6.1.9\ACE_wrappers\examples\APG\Reactor 中的例子,编译Client和HAStatus这两个例子。编译很顺利。然后先运行HAStatus.exe,然后在运行Client.exe时出现以下画面:
满世界的找答案,没找到什么线索。
只好用排除法解决,首先排除机器本身没问题,防火墙也没问题。用最原始的Socket写法能成功。最后定位到 ACE_INET_Addr 的两个变量声明有问题。
3 最终解决
ACE_INET_Addr port_to_listen (ACE_TEXT ("HAStatus"));
=>ACE_INET_Addr port_to_listen (4000);
ACE_INET_Addr port_to_connect (ACE_TEXT ("HAStatus"), ACE_LOCALHOST);
=>ACE_INET_Addr port_to_connect (4000, ACE_LOCALHOST,PF_INET);
按上面进行修改,顺利解决问题。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。