Başlangıç > Dökümanlar > VB.NET ile internet Bağlantı Durumu ve Web Servisleri

VB.NET ile internet Bağlantı Durumu ve Web Servisleri

Bu yazımda Vb.Net ile yapılmış bir masaüstü uygulamasının, o anki internet bağlantı durumu hakkında bilgi verecek bir fonksiyon yazacağız. Ayrıca Xml Web Servisleri yardımıyla, bir haber sitesinden haber başlıklarını çekip, bu haber başlıklarını her 5 saniyede bir değişecek şekilde görüntüleyip, bu başlıkların istenildiği anda ilgili web sayfasına erişimini sağlayacağız. Ben örnek olarak ntvmsnbc sitesinin spor haberlerini kullanacağım.

Bu makalemde Vb.Net ile yapılmış bir masaüstü uygulamasının, o anki internet bağlantı durumu hakkında bilgi verecek bir fonksiyon yazacağız. Ayrıca Xml Web Servisleri yardımıyla, bir haber sitesinden haber başlıklarını çekip, bu haber başlıklarını her 5 saniyede bir değişecek şekilde görüntüleyip, bu başlıkların istenildiği anda ilgili web sayfasına erişimini sağlayacağız. Ben örnek olarak ntvmsnbc sitesinin spor haberlerini kullanacağım.

Xml Nedir?

  • XML hem bir teknolojidir hem de bir dildir
  • XML dil olarak markup dil’leri yaratmaya yarar.
  • XML verileri tanımlamak için kullanılan bir teknolojidir.
  • XML verileri tanımlamak için bir standart oluşturmak için yaratılmıştır.
  • XML verileri standart bir şekilde tanımladığından web’te veya herhagi iki program arasında veri alış verişi kolaylaştırmaktadır.


Markup Dili Ne Demek?
XML dil olarak markup dil’i yaratmaya yarar. Markup dillerine örnek olrak HTML,WML vs.. verilebilir. Bu dillerde veriler bazı işaretlerle (etiket) işaretlenirler. Örneğin bir HTML kodunda bir başlık yazısı <h1> etiketi ile işaretlenir. Sonuç olarak bir belgedeki verileri işaretlemeye yarayan dillere markup dilleri denir. Kısa bir tanımlamada bulunduktan sonra projemize geçelim.

Öncelikle bilgisayarın internet bağlantısı durumunu öğrenmek için bir fonksiyon yazalım. Fonksiyonumuzun sonucuna göre (True ya da False) internet bağlantısı durumunu öğrenmiş olacağız. Fonksiyonumuz aşağıdaki gibi olacaktır.

Public Function BaglantiKontrol() As Boolean

Dim yol As New System.Uri(“http://www.microsoft.com/”)

‘Bağlantı varolup olmadığını kontrol etmek için

‘girdiğimiz internet adresinin bir önemi yok. herhangi bir adreste

‘olabilir.

Dim istek As System.Net.WebRequest

istek = System.Net.WebRequest.Create(yol)

Dim Cevap As System.Net.WebResponse

Try

Cevap = istek.GetResponse

Cevap.Close()

istek = Nothing

Return True

Catch ex As Exception

istek = Nothing

Return False

End Try

End Function

Uygulamamıza birer tane Label,Linklabel,Timer ve Datagrid ekleyelim.

Label nesnemizin adını lbllink, LinkLabel nesnemizin adını lblbaslik olarak değiştirdik. Timer’ın interval değerini 5000 yaptıktan sonra kod kısmına gelebiliriz.

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

lbllink.Visible = False

If BaglantiKontrol() = True Then

MessageBox.Show(“Internet Baglantiniz Vardir”)

Dim ds As New DataSet

Dim xdcDOC As New Xml.XmlDocument

ds.ReadXml(“http://tools.ntvmsnbc.com/rss/SPT.xml”)

DataGrid1.DataMember = “item”

DataGrid1.DataSource = ds

Timer1.Enabled = True

Else

MessageBox.Show(“Internet Baglantiniz Yoktur. Daha Sonra Tekrar Deneyin”)

End If

End Sub

Böylece belirttiğimiz xml adresindeki bilgileri dataset yardımıyla datagridimize aktarmış olduk. Şimdi ise datagrid’teki başlıkları ve adreslerini 5 saniyede bir değişerek göstermek için gerekli kodları yazalım.

Dim i As Integer

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

lblbaslik.Text = Microsoft.VisualBasic.Left(DataGrid1.Item(i, 0), 50) & “…”

lbllink.Text = DataGrid1.Item(i, 1)

i = i + 1

Exit Sub

End Sub

Yapmamız gereken son şey adresini lbllink’te verdiğimiz sayfaya erişim. Bunuda process.start ile yapabiliriz.

Private Sub lbllink_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles lblbaslik.LinkClicked

Process.Start(lbllink.Text)

End Sub

Programımız aşağıdaki gibi olacaktır.

https://i2.wp.com/img341.imageshack.us/img341/3117/image0011i.jpg

https://i0.wp.com/img89.imageshack.us/img89/2649/image0021y.jpg

Kaynak: Koray KOCABAŞ

Reklamlar
  1. isa
    24/12/2011, 09:27

    bende bunu ariyordum.. tesekkurler..

    Beğen

  2. 17/01/2013, 11:38

    Teşekkürler harika hazırlanmış.
    Bir sorum olacaktı. 2010 visual studio da çalışıyorum DataGrid1 değilde datagridview1 olarak görüyor. ve şurada ki kodda yaptığımda hata devam ediyor ne yapabilirim?

    Dim i As Integer

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

    lblbaslik.Text = Microsoft.VisualBasic.Left(.Item(i, 0), 50) & “…”

    lbllink.Text = .Item(i, 1)

    i = i + 1

    Exit Sub

    End Sub

    Beğen

  1. No trackbacks yet.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: