■
IPアドレスがわかると「ProcessStartInfo()」を使って「nbtstat」に“-A”オプション付きでIPアドレスを渡し、MACAddressを取得できそうな気配。
というわけで、まずはHOST NameからIPアドレスを返すプログラム。
なんでこんな面倒なことをやっているのか、なんていう突っ込みはナシね。
生成された実行ファイルにLAN上に存在するホスト名を渡すとIPアドレスを返してくれます。
コンパイルオプションは以下のとおり。
Option Explicit
Option StrictImports System
Imports System.NetClass HOGE
Shared Sub Main(ByVal cmdArgs() As String)
System.Console.WriteLine(cmdArgs(0) & " : " & HostToIP(cmdArgs(0)))
End SubShared Function HostToIP( ByVal hostName As String ) As String
Try
Dim hostInfo As IPHostEntry = System.Net.Dns.GetHostByName(hostName)
Dim address As IPAddress() = hostInfo.AddressList
Dim strAddress As String = ""
Dim index As IntegerFor index = 0 To address.Length -1
strAddress = strAddress & address(index).ToString
Next index
return strAddress
Catch err As Exception
System.Console.WriteLine(err.Message)
End Try
End Function
End Class
> vbc /r:system.dll /debug+.vb