MACアドレス取得〜
その1.
GetAdaptersInfo 関数を使う方法。
上記関数の引数に IP_ADAPTER_INFO を渡して、情報を取得。
IP_ADAPTER_INFO の Next にて鎖構造になっていて、
全てのアダプタ情報が取得出来る。
IP_ADAPTER_INFO の
Address 配列メンバの 0 〜 5 byte がそれぞれ Mac Address の
1 byte 〜 6 byte になっている。
問題点
Windows NT4 未対応
その2.
Netbios 関数を使う方法。
詳細省略。(駄目っぽいので、調べもせず・・・)
アクティブなネットワークアダプタの情報を取得可能。
これならば、Window NT4 対応。
問題点
ただし、1枚のアダプタしか取得できない模様。
Window NT4 で複数刺さっていたらアウト。
その3.
WMI(Windows Management Instrumentation) を利用する方法。
ネットワークアダプタの情報以外にも、
ハードウェアについて、かなり詳細な情報が取れる模様。
VC からのアクセスは、COMを利用。
IWbemLocator を CoCreateInstance で引っ張ってきて、
後は下位オブジェクトを手繰っていく模様。
かなり複雑。
問題点
Window 2000、XP 以外は、WMIのライブラリをクライアントにインストール
する必要がある。
駄目じゃん(泣
どれもこれも問題あり。
どこかで妥協するしかないようなので、
上と相談・・・。