IPアドレスを解決してホスト名を取得します。
#include <iNet.au3>
_TCPIpToName ( $sIp [,$iOption = 0 [, $hDll_Ws2_32 = "Ws2_32.dll" ]] )
パラメータ
$sIp | ドット形式(v4)のIPアドレス |
$iOption | [オプション]デフォルトは0。 0 = ホスト名を文字列で返します 1 = ホスト名を配列で返します(注意を参照) |
$hDll_Ws2_32 | [オプション]Ws2_32.dllをハンドルします。 |
返し値
成功: | ホスト名または配列(注意を参照) |
失敗: | "" |
@Error: | 0 = 正常終了。 |
1 = inet_addr DllCall Failed | |
2 = inet_addr Failed | |
3 = gethostbyaddr DllCall 失敗 | |
4 = gethostbyaddr 失敗、WSAGetLastError = @Extended | |
5 = gethostbyaddr 失敗、WSAGetLastError 失敗 | |
6 = strlen/sZStringRead 失敗 | |
7 = 別名配列の読み込みエラー |
注意
WSAStartup(TCPStartupによる処理)の成功が必要です。
関連
TCPStartup, TCPNameToIP
例
; 例 1
#include <inet.au3>
Dim $sResult, $sIp
TCPStartup()
$sIp = TCPNameToIP("hiddensoft.com")
$sResult = _TCPIpToName ($sIp)
If @error Then
MsgBox(0, "_TCPIpToName()", "@error = " & @error & @CRLF & "@extended = " & @extended)
Else
MsgBox(0, "hiddensoft.com realy is:", $sResult)
EndIf
; 例 2
#include <array.au3>
#include <inet.au3>
Dim $aResult, $sIp
TCPStartup()
$sIp = _GetIP()
$aResult = _TCPIpToName ($sIp, 1)
If @error Then
MsgBox(0, "_TCPIpToName()", "@error = " & @error & @CRLF & "@extended = " & @extended)
Else
_ArrayDisplay($aResult, "Local Hostname(s)")
EndIf