| Bu Konuyu Görüntüleyenler | |||
|
Bu Konuyu görüntüleyenler: 1 Ziyaretçi |
|
VB .Net'te COM Bileşenleri ve Arayüzleri Kullanımı
|
|
16:49, 21-06-08 16:49
(En son düzenleme: 16:51 21-06-08 16:51 **SaBRoZa**.)
Mesaj: #1
|
||||
|
||||
|
VB .Net'te COM Bileşenleri ve Arayüzleri Kullanımı
.Net öncesi dönemde, COM teknolojisini destekleyen dillerle bileşen (component) tabanlı programlar yazıyorduk. COM; basitçe yeni bileşenler yaratmak veya varolan bileşenleri uygulamalar yada başka bileşenler içerisinden kullanmak için Microsoft tarafından tanımlanmış bir teknolojidi idi. COM teknolojisi sayesinde dilden bağımsız bileşenler tasarlamak ve COM destekli diller arasında bu bileşenleri kullanmak mümkündür.
Sizin de .Net ile tanışmadığımız dönemden, miras olarak kalmış ve bugün VB .Net uygulamalarınız içerisinden kullanmak istediğiniz COM bileşenleriniz olabilir. Bu isteğinizi gerçekleştirebilemenizi sağlayacak bilgiler yazının ilerleyen kısımlarında verilecektir. Ancak yazının konusu "VB .Net 'te COM bileşenleri ve arayüzlerinin kullanılması" olduğu için COM teknolojisinin detaylarına girilmeyecektir. Bu sebeble COM teknolojisi ile ilgili temel kavramları bildiğinizi kabul ederek yazının bundan sonraki kısmına VB 6.0 'da birer COM bileşeni ve arayüzü içeren bir ActiweX DLL projesi yapıp daha sonra bu bileşeni, VB .Net 'te ile yazacağımız uygulama tarafından referanse ederek kullanacağınız örnek bir uygulama ile devam edeceğiz. Yapacağımız örnek uygulama client / server mimari ile çalışan ve aritmetik hesapların yapılmasına yönelik basit bir uygulama olacak. Uygulamanın server tarafı VB 6.0 ile yazılmış bir COM bileşeninden, client tarafı ise VB .Net ile yazılmış ve bu COM server'ı kullanan bir windows uygulamasından oluşacaktır. 1. Adım (Arayüzün Tanımlanması) VB 6.0 'da bunun yolu hiç bir implementasyon kodu içermeyen soyut bir sınıf tasarlamaktır. VB 6.0 'da MegaCalculator isminde ve türü ActiweX DLL olan yeni bir proje başlatın. Projeye eklenen sınıfın ismini IMegaCalc olarak değiştirin. (Sınıfın başında koyduğunuz I belirteci sınıfın bir interface olduğunu belirtmektedir) Bu sınıf soyut bir sınıf olduğu için sadece üyelerinin prototiplerini içermektedir. IMegaCalc sınıfının kodları aşağıda verilmiştir. 'IMegaCalc Sınıfı
Option Explicit Public Sub AddInput(inputvalue As Integer) End Sub Public Sub DoCalculation() End Sub Public Function GetOutput() As Double End Function Public Sub Reset() End Sub Bu kodları yazdıktan sonra projeyi "File | Make MegaCalculator.dll" ile derleyebilirisiniz. Bu sayede dll olarak derlenmiş ve register edilmiş bir bileşen arayüzünüz oldu. Projenizi kaydedip VB 6.0 'dan çıkabilirsiniz. 2. Adım (Bileşenin İmplementasyonu) Bu aşamada ise bileşenin operasyonel kodlarının bulunduğu yeni bir ActiweX DLL projesi yaratacağız. Bunun için VB 6.0 'da ismi MeanCalculator ve türü ActiweX DLL olan yeni bir proje başlatın. Proje açıldıktan sonra ilk işiniz "Project | Referances" seçeneğinden MegaCalculator projesini referanse etmek olsun. Bundan sonra projenize eklenen sınıfın ismini ise MeanCalculator olarak değiştirin. Aşağıda MeanCalculator sınıfının kodları verilmiştir. 'MeanCalculator Sınıfı
Bu kodları yazdıktan sonra projenizi "File | Make MeanCalculator.dll" olarak derleyin. Artık projenizi kaydedip VB 6.0 'dan çıkabilirsiniz. (Bu projeyi 'de bir önceki ile aynı dizine kaydetmeniz düzenli çalışabilmek açısından faydalı olacaktır !) Option Explicit Implements IMegaCalc Dim mValue As Integer Dim mValues() As Double Dim mMean As Double Private Sub Class_Initialize() 'Constructor IMegaCalc_Reset End Sub Private Sub IMegaCalc_AddInput(inputvalue As Integer) mValue = mValue + 1 ReDim Preserve mValues(mValue) mValues(mValue) = inputvalue End Sub Private Sub IMegaCalc_DoCalculation() Dim value As Integer mMean = 0 If mValue = 0 Then Exit Sub For value = 1 To mValue mMean = mMean + mValues(value) Next mMean = mMean / mValue End Sub Private Function IMegaCalc_GetOutput() As Double IMegaCalc_GetOutput = mMean End Function Private Sub IMegaCalc_Reset() mValue = 0 End Sub 3. Adım (Client Uygulamanın Yaratılması) Client uygulama VB .Net içerisinde yaratacağımız bir Windows Appilaction projesinden ibaret. Bu uygulamanın görevi ise; yarattığımız COM bileşenini (MeanCalculator.dll) kullanarak çeşitli işlemler yapmak. Client uygulamanın bu bileşendeki fonksiyonları kullanabilmesi için, bileşenin uygulamaya tanıtılması, yani referanse edilmesi gerekmektedir. Referanse etme işlemi VB 6.0 'dakine benzer tarzda ve şöyle yapılmaktadır; "Project | Add Referance" seçeneğinde COM tab 'ına geçin ve listeden "MeanCalculator" ı bularak projenize ekleyin. Çıkan mesaj penceresinde "Yes" demeniz gerekmektedir ! Bu aşamada Solution Explorer 'da referances seçeneğine baktığınızda "MeanCalculator" ve onun kendi içerisinde referanse ettiği, "MegaCalculator" 'ın eklendiğini görebilirsiniz. Artık kullanıcı arabirimini yaratabilirsiniz. Arabirim için aşağıdaki resmi örnek alabilirsiniz ; TextBox'ların ismileri sırsıyla "txtInput" ve "txtOutput" tur. Arabirimi bu şekilde hazırladıktan sonra, artık client side kodları yazabiliriz. Kod: Public Class Form1 Uyarı: İndirmeye başlamadan önce lütfen linklerin hepsini kontrol ediniz. İstek Yapmadan Önce Forumda Sadece Üyeler Linkleri Görebilir. Üye Olmak İçin TIKLAYIN Yapınız! Verilen emeğe lütfen saygı gösteriniz. En azından bir teşekkür edebilirsiniz.Her Türlü Sorununuzda Bana Ulaşın.
Zamanın Durduğu Kaliteli İnsanların Paylaşım Mekanı Sadece Üyeler Linkleri Görebilir. Üye Olmak İçin TIKLAYIN Hedefimiz En Büyük ve En İyi Olmaktır |
||||
|
« Önceki Konu | Sonraki Konu »
|
|
TRFoRuMCuYuZ.CoM © 2007 - 2008 Tüm Hakları Saklıdır. - MyBB - MyBB, © 2002-2009 - MyBB Group - Tasarım: Blackinci - Kurucu:**SaBRoZa**
|






Uyarı: İndirmeye başlamadan önce lütfen linklerin hepsini kontrol ediniz.
İstek Yapmadan Önce Forumda Sadece Üyeler Linkleri Görebilir.
Verilen emeğe lütfen saygı gösteriniz. En azından bir teşekkür edebilirsiniz.

