MACアドレス(接続が2つ以上の場合)
- 題名: MACアドレス(接続が2つ以上の場合)
- 著者: smith
- 日時: 2005/03/16 5:02:47
- ID: 9837
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: MACアドレス(接続が2つ以上の場合)
- 著者: 岡田 之仁
- 日時: 2005/03/16 9:57:53
- ID: 9843
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: MACアドレス(接続が2つ以上の場合)
- 著者: smith
- 日時: 2005/03/17 13:26:32
- ID: 9876
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: MACアドレス(接続が2つ以上の場合)
- 著者: 岡田 之仁
- 日時: 2005/03/17 18:53:29
- ID: 9894
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[4]: MACアドレス(接続が2つ以上の場合)
- 著者: smith
- 日時: 2005/03/18 2:34:35
- ID: 9901
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[5]: MACアドレス(接続が2つ以上の場合)
- 著者: 岡田 之仁
- 日時: 2005/03/18 7:12:12
- ID: 9903
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[6]: MACアドレス(接続が2つ以上の場合)
- 著者: smith
- 日時: 2005/03/18 22:10:35
- ID: 9921
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[7]: MACアドレス(接続が2つ以上の場合)
- 著者: smith
- 日時: 2005/03/18 22:40:09
- ID: 9922
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
どこかのHPに載っていたものをそのままコピーし、
少しだけいじったプログラムなのですが、
Dim MacAddr As String
Dim IPAddr As String
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Objquery As New Management.ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE MACAddress is not null")
Dim ObjCollection As Management.ManagementObjectCollection = Objquery.Get
Dim Obj As Management.ManagementObject
For Each Obj In ObjCollection
If (CType(Obj("IPEnabled"), Boolean) = True) Then
MacAddr = Obj("MacAddress")
Dim IPAs As String()
IPAs = Obj("IPAddress")
Dim IPA As String
For Each IPA In IPAs
Debug.WriteLine("IPAddr:" & IPA)
IPAddr = IPA
Exit For
Next
End If
Next
MsgBox(MacAddr & vbCrLf & IPAddr)
End
End Sub
このようにすると自分のIPアドレスとMACアドレスを取得し、表示します。
どうして取得できるのかはなんとなくしか分かっていませんw
(多分、分かっていれば今回の問題は自己解決できると思うのですが・・・)
コマンドプロンプトでipconfig/allを実行したとき、
接続が一つだけなら良いのですが、ネットワークの構成によって
「Ethernet adapter ローカル エリア接続」の他に、
「PPP adapter ***」が表示される場合もありますよね。
先の方法でMACアドレスを取得すると後者の方が取得されてしまうのですが、
前者、または両方を取得するにはどうしたら良いのでしょうか。
自分の調べ方が悪いだけかもしれませんが、
この辺の情報は検索してもなかなか見つからず困っています。
よろしくお願いします。