The majority of the ISVs I meet are doing .NET managed code development...... and VB6 unmanaged code development. The reasons are pretty obvious - many of the applications sold today by ISVs in the UK were initially architected 7, 8, 9 or 10 years back - and implemented in VB6. These applications remain widely deployed in their customer base and continue to deliver core functionality - even if the newest functionality has been added using VB.NET or C#. It is not unusual to find an ISV selling a ".NET application" that is infact 10% VB.NET and 90% VB6.
But things are changing. I have seen several ISVs in 2007 finally starting the wholesale move to .NET from VB6. Why? Well a combination of:
- Time for a major refresh of architecture - recognising changes such as SOA, SaaS, Web 2.0
- Viscual Basic 6.0 IDE ending extended support April 8th 2008
The latter is an interesting one. The pressure appears to be in many cases coming from customers. Customers effectively saying "we like your application but we can't take it if it uses VB6 as it exits support in 2008". In some cases this appears to be routed in compliance to Sarbanes Oxley. All interesting stuff.
Which leads me to VB6 IDE vs VB6 Runtime. We treat support for these two items independently. Whilst it is true to say VB6 IDE extended support ends April 8th 2008, VB6 Runtime extended support on (for example) Windows Server 2003 doesn't end until.... 2013.
I think the best overview on this is the Support Statement for Visual Basic 6.0 on Windows Vista we made - I would recommend a read if VB6 remains important to you. Also worth checking out my previous post on help for ISVs migrating from VB6.