Gunumuze uyarlarsak, Visual Basic ile yazilmis sistemleriniz var ve .Net`e gecmeye calisiyorsunuz yani buyuk bir conversion projesi sizi bekliyor ama bu arada da yavas yavas .Net`e geciyorsunuz bir an geliyorki yazdiginiz islemin VB 6.0 (oldugunu farzedersek) da da kullanmak gerekti ne yapacagiz?
Oncelikle yazdigimiz tum dll icindeki fonksiyonlar tabiku public olmak durumunda , ayirica bazi ozellikler VB ile kullanilmayabilir parametreli constructor a VB den erisemeyiz , bu ve buna benzer VB de olmayan ama .Net de olan ozellikler kullanmamaliyiz. Ayrica geriye deger dondurmek istiyorsak da bu VB nin anlayacagiz sekild olmalidir. Bunu yanlis yaptigimiz an bunun cozumu yoktur 🙁
Dll`i yazdik diyelim ve simdi bunu nasil COM+ veya COM olarak kullanacagiz. Bunu da RegAsm exe si ile kolayca yapabiliriz bununla derledikten sonra da projemize refere ederek kullaniriz.
RegAsm nin yaptigi islem ise:Register Assembly dir ve bunu kullanarak olusturdugumuz dll i register a yazarak kullanilmasini saglar. RegAsm bize tlb uzantili bir derlenmis dosya sunar. Bu dosya da COM veya COM+ Componentini projemize refere etmeyi saglayan metadata yi ve cesitli linkleri ihtiva eder.
Son olarak dikkat etmemiz gereken en onemli sey ise: yazdigimiz .Net dll inde projenin AssemblyInfo.cs dosyasinda ComVisible ozelliginin true olmasidir, bu ozellik default da false gelmektedir.