Сегодня 29 ноября, пятница ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7276
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
Справочник по C#
Справочник по C#
Голосов: 1
Адрес блога: http://www.csharpcoderr.com/
Добавлен: 2012-11-28 00:46:26
 

Использование веб-службы для определения страны происхождения IP-адреса.

2012-11-09 16:27:40 (читать в оригинале)


      Кто активно пользуется интернетом, не раз видел на различных сайтах виджеты, показывающие к какой стране относится ваш IP адрес, такой виджет есть и у нас на сайте. Но как же определить в какой стране находится компьютер IP адрес которого вы знаете или узнать в какой стране расположен провайдер интересующего вас сайта?
      Для этого мы воспользуемся веб-службой GeoIPService. Теперь откройте Microsoft Visual Studio и создайте новое приложение Windows Form под названием GeoIP. Добавьте два компонента textBox и label. Так же вам понадобится добавить компонент button.
Для добавления службы в ваше приложение сделайте клик правой клавишей мыши на названии вашего проекта в обозревателе объектов и выберете «Добавить ссылку на службу».
У вас откроется новое окно в котором необходимо нажать на кнопку «Дополнительно».
Так же откроется новое окно в котором необходимо нажать на кнопку «Добавить веб-ссылку…»
В очередном новом окне вставьте адрес http://www.webservicex.net/geoipservice.asmx?WSDL в поле «URL-адрес» и нажмите зеленую кнопку с белой стрелкой для перехода, смотрите скриншот ниже:
После успешной загрузки адреса, вам необходимо ввести имя веб-ссылки и нажать кнопку «Добавить ссылку».
Если у вас все успешно получилось, то в обозревателе решений вы увидите новую папку с названием вашей службы.
Теперь переходим непосредственно к коду нашего приложения. Добавьте приведенную ниже функцию в код вашей формы.
public void checkIP(string ip)
{   
    //Выставляем курсор ожидания, обычно изображаемый в форме песочных часов.        
    this.Cursor = Cursors.WaitCursor;
    
    geoip.GeoIPService IPServ = new geoip.GeoIPService();          
    geoip.GeoIP IPRes = IPServ.GetGeoIP(ip);

    // Если при запросу функция вернула нам 1, то адрес найден
    if (IPRes.ReturnCode == 1)
    {
        //Выставляем белый цвет фона компонента
        textBox2.BackColor = Color.White;

        // Отображаем имя страны в textBox2
        textBox2.Text = IPRes.CountryName.ToString();
    }

    // Если IP адрес не найден
    else
    {
        // Меняем цвет в компоненте TextBox
        textBox1.BackColor = Color.FromArgb(255, 235, 235);

        // Сообщаем пользователю что адрес не был найден
        textBox2.Text = "IP not found";
    }

    // Возвращаем курсор по умолчанию; обычно это курсор в виде стрелки.
    this.Cursor = Cursors.Default;
}
А у компонента button в событии button1_Click пропишите ее вызов:
private void button1_Click(object sender, EventArgs e)
{
    checkIP(textBox1.Text);   
}
Единственный минус этого приложения, ему необходим доступ в интернет.

Тэги: form, network, web, window

 


Самый-самый блог
Блогер ЖЖ все стерпит
ЖЖ все стерпит
по сумме баллов (758) в категории «Истории»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.