Программирование >>  Автоматически обновляемые приложения 

1 ... 138 139 140 [ 141 ] 142 143 144 ... 170


Примечание

Примеры работы с сетевыми адресами находятся в папке DNS на прилагаемом диске.

Ping

в состав операционной системы Windows входит утилита командной строки ping.exe, позволяющая определить доступность компьютера в сети. Для реализации подобной функциональности в .NET Framework 1.1 требовалось писать сложный код с использованием вызовов функций Windows API. В .NET Framework 2.0 появился новый класс ping из пространства имен

System.Net .Networkinformation, С ПОМОЩЬЮ КОТОрОГО реализация возможностей, предоставляемых утилитой ping.exe, стала очень простым занятием. В справочном материале, поставляемом с Visual Studio 2008, приводится много примеров использования этого класса. В листинге 16.6 приведен простой пример, который даст вам представление, как вы можете использовать данный класс в своем приложении.

; Листинг 16.6, Пинг адресов

Ping pingSender = new PingO;

PingReply reply = pingSender.Send( rusproject.narod.ru ) ;

if (reply.Status == IPStatus.Success) {

listBoxl.Items.Add( Address: + reply.Address.ToString()); listBoxl.Items.Add( RoundTrip time: + reply.RoundtripTime); listBoxl.Items.Add( Time to live: + reply.Options.Ttl); listBoxl.Items.Add( Dont fragment: + reply.Options.DontFragment) listBoxl.Items.Add( Buffer size: + reply.Buffer.Length);

else

foreach (System.Net.IPAddress ip in host.AddressList) {

MessageBox.Show(ip.ToString());



listBoxl.Items.Add(reply.Status);

Примечание

Пример работы с классом ping находится в папке PingDemo на прилагаемом диске.

Также хочу предложить вашему вниманию альтернативный вариант, который был приведен программистом Младеном Янковичем (Mladen Jankovic) на сайте CodeProject по адресу http: www.codeproject.coin/KB/IP/ SimpIePingUtilityWithGUI.aspx. Данный пример имеет GUI-интерфейс, и пользоваться этой программой гораздо удобнее. Проект немного сырой и требует доработки. Но на основе этого примера вы сможете создать свою собственную программу. Пример сопровождается хорошей статьей, где подробно описывается его работа.

Coolsoft NetPinger

IPAddress Host Name

€4233.167.99 google.com 127.0.0.1 (ocalhost

Status Status Dll... ! Sent Last ; Lost% Cimen... Avarg... TestDu...

Alfve Alrve

00:03:26 00:03:27

94 104

4.26% 172 0.00% 0

172.32 O.CO

00:03:26 00:03:27

Рис. 16.1. Утилита для работы с классом Ping с графическим интерфейсом

Примечание

Пример создания графического интерфейса для работы с классом Ping иа- ходится в папке NETPinger на прилагаемом диске.



Листинг 16.7. Проверка дрступнрсти адреса в Интернете

using System.Net;

public static bool CheckUrl(string uri) {

bool rt = false;

if (url.ToLower 0.StartsWith( www. )) {

uri = http: + uri;

HttpWebResponse myResponse = null;

HttpWebRequest myRequest =

(HttpWebRequest)WebRequest.Create(uri); myResponse = (HttpWebResponse)myRequest.GetResponse() rt = true;

catch (WebException err) {

rt = false;

finally

if (!(myResponse == null)) {

myResponse.Close() ;

Проверка доступности веб-адреса

Если нужно определить, доступна ли указанная ссылка в Интернете, можно написать небольшую вспомогательную функцию CheckURL, приведенную в листинге 16.7.



1 ... 138 139 140 [ 141 ] 142 143 144 ... 170

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика