同じメーカーのLANカードの片方のみを無効にしたい


Hiro  2005-10-14 16:16:11  No: 59268  IP: 192.*.*.*

VC++ で、2枚差しのLANの片方を無効にするツールを作成しているのですが、
SetupDiGetDeviceRegistryProperty()関数で、デバイス名を求めると、両方とも、同じ名前になってしまっているので、どちらを無効にしていいかわかりません。    ただ、ネットワークのプロパティを見ると  #2とついていますが、
どうすれば、見極めできるのでしょうか?
ご存知の方がいたら、方法を教えて下さい。

編集 削除
オショウ  2005-10-15 20:38:58  No: 59269  IP: 192.*.*.*

同一のLANカード複数挿しの環境が無いので、未確認ですが・・・

SetupDiGetClassDevs
で、デバイスハンドルを取得して
SetupDiEnumDeviceInfo
を実行したら、どういう内容が返ってきますか?
確認してみて下さい。

尚、SetupDiGetClassDevsの第一パラメータでは
GUID_DEVCLASS_NET
の内容は何を指定されていますか?

以上。

編集 削除
ryo  2005-10-16 13:56:31  No: 59270  IP: 192.*.*.*

IPで判断するのはどうでしょう?

編集 削除
とみぞぅ  2005-10-18 11:49:41  No: 59271  IP: 192.*.*.*

どちらを無効とすべきか、誰がどのように判断を行うのかが不明ですが、
  MACアドレス
を利用すれば、比較的安全に区別ができるのでは?

IPアドレスやインタフェース名称は自由に書き換えが出来ますが、
ハードに焼かれているMACアドレスを変更するのは
比較的難しいと思います。
(ソフト処理しているMACアドレスの場合は・・・・)

であであ♪

編集 削除