0

我有一台配置了多个 IP 地址并且不在网络中的 PC。

我正在尝试在这台 PC 上使用 CAsyncSocket 运行在 VC++ 上开发的服务器软件。但是Bind()该软件中的功能总是失败并出现错误WSAEADDRNOTAVAIL 10049

但是我发现绑定在以下情况下可以正常工作:

  • 当 PC 连接到网络时
  • 在 PC 中配置单个 IP 地址时

我无法理解套接字绑定与网络连接和多个 IP 配置的依赖关系。这是 CAsyncSocket 的问题还是在这种情况下有办法处理套接字?

编辑:

这是我用于创建套接字(显式绑定)的代码,非常简单:

ret = m_pAMC1_MAIN_VMS_A_SenderSocket->Create(m_amc1_main_vms_a_port_local, \
                        SOCK_DGRAM, FD_WRITE, (LPCTSTR) "193.0.161.111");

请注意,在上面列出的情况下,相同的代码会成功执行。

4

0 回答 0