Remoting Nesnesinin Hazırlanması
Öncelikle new/project diyerek bu kısımdan VB altındaki Class Library olanı seçiyoruz. Class ismi olarak galatasaray olarak değiştirin. Hemen al satıra aşağıdaki kodu ekleyin. Bu nesnemizin uzaktan erişimine olanak tanır.
InheritsMarshalByRefObject
Daha sonra veritabanımıza bağlanmak için bir oledbconnection nesnesi ve sorgu hazırlamak için de bir oledbadapter nesnesine ihtiyacımız var. Bundan sonrada elimizdeki verileri daatsete atmak için dataset oluşturacağız. Kodlar aşağıdaki gibi galatasaray sınıfı içine yerleştirilmelidir.
PublicFunctiondataset_getir()
Dimbaglanti As NewOleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:/db.mdb")
Dimadap As NewOleDb.OleDbDataAdapter("select * from gs", baglanti)
Dimds As NewDataSet
baglanti.Open()
adap.Fill(ds, "a")
baglanti.Close()
Returnds
End Function
Server Hazırlanması
Yine file/new/project adımlarını tekrarlayarak visual basic altındaki consol application seçeneğini seçelim ve ok tıklayalım. Yalnız Solution kısmının Add to Solution olmasını unutmayın.Bu aşamada karşımıza modul gelecektir ve buna az önceki nesnemizi referans olarak eklemeliyiz. Bunun yanında remoting kütüphanesini de yine referans olarak göstermeliyiz. Solution Explorer kısmından module(server) sağ tıklayıp çıkan menüden add reference seçeneğini seçelim. .Net kısmından system.remoting ve project kısmında da nesnemizi referans ekleyebiliriz. Bu işlemlerden sonra aşağıdaki kodları konsol uyuglamamız için yazmalıyız.
ImportsSystem.Runtime
ImportsSystem.Runtime.Remoting
ImportsSystem.Runtime.Remoting.Channels
ImportsSystem.Runtime.Remoting.Channels.Tcp
ModuleModule1
SubMain()
Dimkanal As NewTcpChannel(1905)
ChannelServices.RegisterChannel(kanal, False)
RemotingConfiguration.RegisterWellKnownServiceType(GetType(nesne.galatasaray), "gs", WellKnownObjectMode.SingleCall)
Console.WriteLine("Kanal:tcp Port:1905")
Console.WriteLine("Server açıldı")
Console.WriteLine("Kapatmak için bir tuşa basın...")
Console.ReadLine()
End Sub
End Module
Client Hazırlanması
file/new/project adımlarından windows application kısmını seçelim. Solution kısmının Add to Solution olmasını unutmayın! Formumuza aşağıdaki nesneleri ekleyelim.
1 adet textbox (name:txtIP)
1 adet datagrid
1 adet button
Forma eklediğimiz butonun click eventine aşağıdaki kodları yazın.
Dimkanal As NewTcpChannel()
ChannelServices.RegisterChannel(kanal, False)
RemotingConfiguration.RegisterWellKnownClientType(GetType(nesne.galatasaray), "tcp://"& txtIP.Text & ":1905/gs")
Dimnesnemiz As Newnesne.galatasaray
DataGrid1.DataSource = nesnemiz.dataset_getir
Son olarak solution kısmını(projemizi) sağ tıklayarak bu menüden Set StarUp Project... kısmına geçelim. Buradaki ayarlar aşağıdaki gibi olmalıdır.

Projeyi çalıştırdığınızda textbox kısmına ip no yazmanız yeterli olacaktır. Projenin çalışabilirliğini kontrol etmek için buraya localhost yazıp deneyebilirsiniz. (sakın veritabanınızı c:/ dizini içine yerleştirmeyi unutmayınız...)
Makaledeki uygulamayı yüklemek için tıklayın
Bir sonraki makalemde görüşmek dileğimle ...