NetworkPort és IPProtocolEndpoint összekapcsolása windows-on

0 votes
asked Apr 8, 2013 in IRF tantárgy by anonymous  
edited Apr 9, 2013

Az egyes hálózati kártyákhoz tartozó IP címeket (IP és netmask) kell lekérdeznem.
Ezt Linux-on a NetworkPort és az IPProtocolEndpoint "összeasszociálásával" csináltam meg. Windows-on nem találok kapcsolóosztályt a kettő közé.

Egyébként úgy próbálom, hogy a CIMNetworkPort-hoz a CIMPortImplementsEndpoint-on át behozom a ProtocolEndpointot, de ebben még nincs ip, úgyhogy gondolom ehhez kéne valahogy hozzárakni az IPProtocolEndpointot.

2.Szeretném megtudni, hogy elfogadjátok e azt a megoldás, ha itt nem használom az asszociator-t hanem a NetworkPort-nál visszakapott Name-et hasonlítom az MSFT_NetIPAddress InterfaceAlias attribútumához és az alapján készítem el a filteremet?
Ezt a megoldást elkészítettem és így is tökéletesen működik. A kérdés csak az hogy el is fogadjátok e, hogy ha itt nem használnám ki a kapcsolóosztályt?

1 Answer

0 votes
answered Apr 10, 2013 by micskeiz (2,873 points)  

Van kapcsolóosztály Windows alatt is (első körben talán egyszerűbb úgy megtalálni, ha a Windows-specifikus MSFT_* példányokhoz kacsolódó példányokat nézed).

A 2. megoldás is működik, csak nem garantált, hogy a két különböző osztályban szereplő név mindig minden esetben ugyanaz. A kapcsolóosztályok elvileg pont az ilyen összekapcsolást adják meg, bárhogy is változik később az implementáció. Szóval a kapcsolóosztályos megvalósítás elegánsabb és robusztusabb (bár nyilván picit több az erőforrásigénye).

...