2012-03-14 50 views
0

上检查特定IP(包括Ipv4和Ipv6)上的特定端口可用性我在下拉菜单中显示所有连接的Ip地址,我需要检查特定端口是否空闲(特别是Ipv4和Ipv6) .IP从下拉菜单中选择,我如何检查选取的IP是否是IPv4或IPv6,然后我如何能在IPv6的知识产权案件查询免费端口可用性在nsis

+1

是什么让你确定,如果它在安装时是免费的,下次重新启动时它是免费的? (或将来任何其他任意点) – Flexo 2012-03-14 17:34:35

+0

我想知道的是** 1。**是否有任何Windows API(可用于.nsi文件)告诉传递的Ip是Ipv4还是Ipv6。 ** 2。**在Ipv4中,我们使用inet_addr将字符串addr转换为网络地址,是否还有其他窗口API会对Ipv6 Ip执行相同的操作? – user1234 2012-03-15 04:55:46

回答

0

你为什么老是问基本相同的问题overover?答案总是一样的:有没有现成的NSIS插件可以做到这一点AFAIK所以你的选择是:

  • 编写一个新的插件
  • 调用本机Windows API的系统插件
  • 使用nsExec执行一个外部工具,如netstat
+0

这个问题是要知道abt如何区分选定的ip地址是ipv6还是ipv4? – user1234 2012-03-15 04:48:19

+0

我很抱歉如果问我所有的问题的方式似乎与你相同。我试图在我所有的问题中提出完全相同的观点。我将更正此问题 – user1234 2012-03-15 04:57:23

+0

如果您只想检查地址是否为IPv6,则可以选择多种功能:WSAStringToAddress,inet_pton,getaddrinfo或RtlIpv6StringToAddress。试着听一个端口将需要更改我在另一个答案中为您写的示例代码... – Anders 2012-03-15 17:14:56