.net components in com, DOT NET Programming

Assignment Help:

How can we use .NET components in COM

.NET components can't be used in straight forward way with the COM. You will require to create CCW in order to communicate COM components  with .NET assemblies. Following are some of the different approaches to implement it :-

1)Explicitly declare interfaces

Public Interface ICustomer

Property CustomerName() As String

Property CustomerCode() As String

Sub AddCustomer()

 End Interface

Public Class Customer

 Implements ICustomer

Private PstrCustomerName As String

Private PstrCustomerCode As String

Public Sub AddCustomer() Implements ICustomer.AddCustomer Try

 ' addin of database code can go here

Catch ex As Exception

Throw ex

 End Try

End Sub

Public Property CustomerCode() As String Implements

ICustomer.CustomerCode

Get

 Return PstrCustomerCode

 End Get

Set(ByVal value As String)

PstrCustomerCode = value

End Set

End Property

Public Property CustomerName() As String Implements ICustomer.CustomerName

Get

Return PstrCustomerName

 End Get

Set(ByVal value As String) PstrCustomerName = value

End Set

End Property

 Public Sub New()

End Sub

End Class

The above customer class is going to be used by COM components so all the properties and methods are declared in interface and implemented in the customer class.Customer Name.Customer Code &  AddCustomer are Ist declared in ICustomer & then implemented in the Customer Class. Please Note that the class must have a default constructor.

2)The second way to generate  CCW is by using InteropServices attributes. In this interfaces are created automatically.

 Following are the different type of class attributes :

None:-No class interface is generated for  class. This is the default setting when you do not specify anything.

AutoDispatch :- Interface that supports IDispatch is created for class. However, no type information is generated.

AutoDual :- A dual interface is created for the class. Type information is generated and made available in the type library.

Below are the source code we have used the third attribute.

Imports System.Runtime.InteropServices

  _ Public Class ClsCompliant

End Class

Other than class attributes defined up there are some other attributes with which you can govern other part of  the assembly. For Example "GuidAttribute" allows you to specify the GUID, "ComVisibleAttribute" can be used to hide .NET types from COM etc.

a)When  .NET assembly is created using either interface or by using interopservices method we need to create a COM type library using Type library export tool.

Tlbexp (AssemblyName)

b)The final thing is registering the CCW in registry by using regasm tool.

regasm AssemblyName [Options]

c)Finally refer the TLB in your COM IDE Below is figure showing VB6 IDE referencing the DLL

500_.NET components in COM.png


Related Discussions:- .net components in com

Car (causal analysis and resolution), What is CAR (Causal Analysis and Reso...

What is CAR (Causal Analysis and Resolution)? The basic purpose of the CAR is to analyze all the problems, defects, and good practices/positive triggers in projects, perform a

How do i force the dispose method to be called automatically, How do I forc...

How do I force the Dispose method to be called automatically, as clients can forget to call Dispose method? To Call the Dispose method in the Finalize method and in the Dispose

Web based inventory management system, Web Based Inventory Management Syste...

Web Based Inventory Management System Project Description: I need a build in software which has the subsequent features, if anybody has ready to use web based application, pl

Name the classes that are in the system.numerics namespace, Name the classe...

Name the classes that are introduced in the System.Numerics namespace. The following two new classes are introduced in the System.Numerics namespace:  BigInteger - Refers

Udp based data transfer client-server in .net, UDP Based, Data Transfer Ser...

UDP Based, Data Transfer Server/ Client in .NET C# Project Description: We require the Network Level Functionalities (NLFs) of a Server/ Client for transferring data among tw

Capstone .., Why isn''t there an allowed amount for nonfacility for code 27...

Why isn''t there an allowed amount for nonfacility for code 27405?

Define an array, Define an array. An array is explained as a homogeneou...

Define an array. An array is explained as a homogeneous collection of elements, stored at contiguous memory locations, which can be referred by the similar variable name. All t

How to avoid deadlock in threading?, Avoid deadlock in threading The be...

Avoid deadlock in threading The best  and careful planning may avoid deadlocks.There are so many ways Microsoft has provided by which you can decrease deadlocks for example Int

Scavenging, What is scavenging? When server running your ASP.NET applic...

What is scavenging? When server running your ASP.NET application runs low on the memory resources, items are discarded from the cache depending on cache item priority. The Cach

.net aplication with vbulletin paid subscribtion, .NET aplication with vBul...

.NET aplication with vBulletin paid subscribtion Project Description: I have an application in .net it's a simple client i have sheltered with net seal license system for aut

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd