tags:

views:

161

answers:

4

We are using a software library from a major US manufacturer. For years the library had mainly two interfaces, a bunch of C API DLLs and a collection of ActiveX controls which encapsulate the DLL functionality. The ActiveX interface worked pretty well back in the old days of Visual Basic 6. Then .NET appeared with it's COM Interop compatibility interface for the now old ActiveX technology. This had a few pitfalls like dynamic objects never removed (Link) or problems when using multi-threaded applications (cross apartment calls etc.).

Now the manufacturer decided to discontinue the ActiveX interface because "of the growing migration from COM (i.e., ActiveX control) to .NET technology within the Windows® development community". Can anyone tell me more about that? Are there plans from Microsoft to drop the COM Interop interface in future .NET releases or are there other huge current and future issues I haven't thought about? Or is this more a matter of taste like buying a new TV because it looks better?

Also I'm wondering if there is some kind of ActiveX RAD replacement where from the user side I drag and drop a control to my form, set all parameters graphically and are almost done with that.

+1  A: 

Nice to see you out from that cave! Right now on SO there are 26886 questions tagged C#, 16657 tagged .Net, 12956 tagged ASP.Net and only 700 tagged COM and 243 tagged ActiveX. The witting has been on the wall for many many years. The CLR based RAD component technologies had already gone through several incarnations already in the past 7-8 years.

Remus Rusanu
+1  A: 

.NET exceeded the functionality of VB6/ActiveX over six years ago. Today there's no comparison.

It's only surprising that your vendor took this long to decide to drop ActiveX support.

BTW, the drag/drop RAD stuff exceeded ActiveX back when .NET 1.0 first shipped!

John Saunders
A: 

Actually, it is a matter of buying a new TV because it has a much healthier LCD screen instead of the old health damaging CRT screen. Henceforth, the manufacturer is no longer supporting the old models due to lack of customer interest.

Rui Craveiro
+2  A: 

Win32 is still heavily based on decisions made in the DOS days, for backward competability. After investing so much in COM, Microsoft will probably keep that spirit supporting COM interop until .NET dies. Having that said, they will just maintain what they have, without any further development.

The ActiveX vendor, OTOH, doesn't have that kind of commitment (or at least they don't feel they do). So regardless of Microsoft's support, they can just drop the ActiveX interface if they like. And they are definitively right saying people hardly ever use COM anymore.

eran