1

我正在使用 inno setup 制作安装文件。它需要提取本地 IP 地址(我可以通过查询 Win32_NetworkAdapterConfiguration 来完成)并检查是否打开了特定端口以供软件运行(我目前正在寻找答案)。

我意识到 WMI Win32 类包含很多有用的信息。所以我想知道如果有可能的话,我应该使用哪个 Win32 类来检查这个端口?

谢谢,

4

2 回答 2

2

AFAIK 检查给定端口是否打开的唯一 WMI 类是NetDiagnosticsWMI 类和ConnectToPort方法,但此类仅存在于 Windows XP 中。因此,如果您想要一个适用于其他 Windows 版本的选项,您可以尝试导入(或编写您自己的应用程序并从 inno 调用)类似 Winsockconnect函数的东西,就像在这个问题上显示的那样How to check if a TCP port is available with Delphi?

于 2012-11-08T19:02:38.833 回答
0

只需尝试将套接字绑定到它。如果成功,则可用。

于 2012-11-09T02:17:53.930 回答