代码之家  ›  专栏  ›  技术社区  ›  Goz

移植getifaddrs赢得XP

  •  7
  • Goz  · 技术社区  · 15 年前

    我正在尝试将一个MacOSX应用程序移植到windows,但遇到了一个关于getifaddrs的问题。基本上windows不支持它。我正试图找到一种方法来重新实现它(对于AF\u INET和AF\u INET6),但是windows上的“等效”功能似乎与MacOSX支持完全不同。

    以前有人做过这种转换吗?如果是这样的话,有什么好方法可以让windows像MacOSX那样向我报告界面信息吗?

    4 回复  |  直到 15 年前
        1
  •  12
  •   Laurent Etiemble    15 年前

    Windows上最接近的函数是 GetAdaptersInfo GetAdaptersAddresses . MSDN文档非常全面,因此您应该可以找到所需的一切。

        2
  •  6
  •   Community CDub    5 年前

    getifaddrs() getaddrinfo ,这是POSIX和Windows友好的。乍一看有点复杂,但其实没那么糟。 This SO question showip.c 上的示例 Beej's page here 是Windows的一个例子;请注意,它缺少一个 #include <stdio.h> 在顶部,一定要链接到 Ws2_32.lib .)

        3
  •  3
  •   Steve-o    12 年前

    http://code.google.com/p/openpgm/source/browse/trunk/openpgm/pgm/getifaddrs.c

    编辑: Wine 1.3修复了IPv4遇到的问题;IPv6友好API。

        4
  •  1
  •   zed_0xff    15 年前