Kezdőlap > .NET, Windows7 > Windows 7 – Hálózati információk

Windows 7 – Hálózati információk

2010. május 11. kedd Hozzászólás Go to comments

A Start Solution innen tölthető le.

image Szintén egy egyszerűsített információ lekérdezésre szolgáló API a Network List Manager API. Lekérdezhetjük a definiált hálózati kapcsolatainkhoz tartozó információkat, olyanokat, mint például, hogy az adott kapcsolat aktív-e, és ha igen hozzáfér-e az internethez. Az alábbi egyszerű példa a Windows Api Code Pack ezen képességét mutatja be.

1.      Jelöljük ki a W7NetworkDetails_Tutorial Projectet a Solution Explorer-ben

2.      Jobb egérgomb -> Set as Startup Project. Ezzel beállítjuk azt, hogy ez a project induljon el, amikor indítjuk az alkalmazást.

3.      Nyissuk meg a MainWindow.xaml fájlt. Láthatjuk, hogy a felhasználói felület előre el van készítve, így ezzel nincs dolgunk.

4.      Nyissuk meg a MainWindow.xaml.cs fájlt.

5.      A konstruktorhoz adjuk hozzá az alábbi sorokat (Task – 8.1)

networkCollection = NetworkListManager.GetNetworks(NetworkConnectivityLevels.All);

foreach (Network item in networkCollection)

{

    cbNetworkCollection.Items.Add(item.Name);

}

cbNetworkCollection.SelectedIndex = 0;

A program betöltődésekor, összeszedi a definiált hálózati kapcsolatokat (A NetworkConnectivityLevel All tulajdonsága miatt az összeset, mind az élő mind pedig a lezárt kapcsolatokat). Ezután a listán végiglépegetünk, és egyesével hozzáadjuk a comboboxhoz. A végén pedig alapértelmezettként az első elemet jelöljük ki.

6.      Ezt követően a Combobox SelectionChanges eseményéhez adjuk hozzá az alábbi kódokat. (Task – 8.2)

Network queryResult = networkCollection.Where(n => n.Name == cbNetworkCollection.SelectedItem.ToString()).ElementAt(0);

 

lblCategory.Content = queryResult.Category;

lblConnectedTime.Content = queryResult.ConnectedTime.ToString();

lblCreatedTime.Content = queryResult.CreatedTime.ToString();

lblDescription.Content = queryResult.Description;

lblDomainType.Content = queryResult.DomainType;

lblIsConncted.Content = queryResult.IsConnected;

lblIsConnectedToInternet.Content = queryResult.IsConnectedToInternet;

lblNetworkId.Content = queryResult.NetworkId;

Ez az esemény akkor következik be, ha a Combobox SelectedIndex értékét megváltoztatjuk. Ebben az esetben egy Linq lekérdezést hajtunk végre. A lekérdezés lényege csupán annyi, hogy válassza ki azt az elemet, aminek a név tulajdonsága megegyezik a comboboxban kiválasztott elem név tulajdonságával.

7.      Fordítsuk le (Ctrl+Shift+B) és indítsuk el (F5) az alkalmazást.

8.      A comboboxban megjelent hálózatokat egyesével nézzük meg. Legalább 1 elemnek lennie kell minden gépen, aminek van definiált hálózati kapcsolata.

image

Kategóriák:.NET, Windows7
  1. Még nincs hozzászólás.
  1. No trackbacks yet.

Hozzászólás