IPの取得


ぺん  2006-08-22 23:43:01  No: 96372

質問です

VBからnslookup  ***(←ここは任意の文字)コマンドを使って、
かつ、その結果(IP)をパラメータで得たいのですが

方法を教えて下さい。お願いします。

環境は6.0.xpです。


あん  2006-08-23 01:34:38  No: 96373

WindowsXPでは動きました。

Dim WshShell
Dim oExec
Dim sInput
Dim parm
Dim IP
parm = ""
Set WshShell = CreateObject("WScript.Shell")
Set oExec = WshShell.Exec("nslookup" & " " & parm)
Set Reg = CreateObject("VBScript.RegExp")
Reg.Pattern = "(Address *)(.*)"
sInput = ""

Do While True

     If Not oExec.StdOut.AtEndOfStream Then
          sInput = oExec.StdOut.ReadLine
          MsgBox sInput
          If Reg.TEST(sInput) = True Then
              IP = Reg.Replace(sInput, "$2")
              MsgBox IP
              Exit Do
          End If
     Else
          Exit Do
     End If
Loop


ガッ  2006-08-23 01:46:47  No: 96374

もうちょっと直接的な方法:
http://wisdom.sakura.ne.jp/system/winapi/winsock/winSock3.html
のgethostbyname()、gethostbyaddr()


あん  2006-08-23 02:00:21  No: 96375

>のgethostbyname()、gethostbyaddr()
これだとDNSサーバーを指定する場合は
もうちょっと考える必要がありますね。


ガッ  2006-08-23 02:11:33  No: 96376

確かに(orz


あん  2006-08-23 02:26:50  No: 96377

ちょとお修正・・

>Reg.Pattern = "(Address *)(.*)"
Reg.Pattern = "(Address: *)(.*)"


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加