It looks like the Visual Basic 6 holdouts can breathe yet another sigh of relief. Visual Basic 6 seems to work with Windows 10 as do VB6 apps, though not without some caveats.
I’ve been reading a few threads in various forums where most people have had few to no problems developing VB6 apps or running them in Windows 10. I’ve seen at least one VB6 developer that claims they’re OCX laden application has issues when loading. They say that some of the controls simply fail to load at runtime. Funny enough, it happens only on 32 bit Windows and 64 bit Windows 10 works fine. They gave no information if these were new installs or legacy upgrades.
Another developer claims to have problems installing VB6 Service Pack 6 on Windows 10. They tracked it down to two Registry keys not being written. This website gives a process to install VB6 in Windows 10. The fact there is now a procedure to install an old app on a new operating system should be pause for concern.
The only way to get hold of VB6 is to have a MSDN subscription. The subscription is $500 so that doesn’t seem like a huge burden. But then again, remember that Microsoft is not supporting VB6 though the VB6 runtime is shipped with Windows 10.
There are a boatload of VB6 applications still out there so I think support for VB6 will be around for a long time. In April, 2014 an InfoQ article stated there were hundreds of VB6 developer positions listed on Dice and Monster. VB6 officially went out of support in 2008 so good luck finding entry level and even junior developers to fill those spots – no one is learning VB6 any more. One of my old clients has had a revolving door of VB6 developers for several years now and it’s getting harder and harder to find competent VB6 developers, and developers that wish to work with it.
As a Xojo consultant we’ve converted quite a few VB6 apps. Well, convert is a strong word, really it’s a rewrite. Despite both using a BASIC-like language, the two languages are diverging rapidly (not that they were ever really all that close to begin with). Many issues that we spent a lot of time working around in VB6 just don’t happen in Xojo. In our experience entire modules and classes just disappear because we don’t need them in Xojo.
Xojo is updated several times a year while VB6 isn’t. Xojo is about ready to release a new version that creates 64 bit versions of Mac OS X, Windows, Linux for desktop, console, and web apps. iOS will also be 32 bit and 64 bit. VB6 is stuck building only 32 bit Windows apps.
Is Xojo a perfect alternative for VB6? No. It is not perfect for every application. Because its strength is really cross platform applications there are compromises all over the place. If you look at Mac and Linux applications they just don’t have the complex controls that Windows does. For some this is a deal breaker because their application demands it. However, if you want a Mac OS X or Linux version of your application you’ll want to redesign the UI anyway.
Ten years ago our clients came to us for Windows apps first and if we could do a Mac version for the graphics geek that was great. Now, they come to us for Mac apps first and if we can do a Windows version for the accountant in the corner that’s great. Xojo does web apps now and that’s become an increasingly larger portion of our business and VB6 just doesn’t compete in that area.
The Xojo universe is full of VB6 developers and the Xojo forums are full of them. The developers that have found and started using Xojo usually go through a short learning curve and a few WTF moments. And then, after they stop trying to make Xojo work just like VB6, they embrace the tool and enjoy life again.
Windows 10 is yet another bullet dodged for VB6 hold outs. At what point do you start to panic and find an alternative? I guess if you’ve waited this long you’re hoping that Microsoft keeps supporting the VB6 runtime forever.
I am biased, naturally, but Xojo really is a good product and a good solution for many applications. If you would like to find out some rough costs of moving your application to Xojo we have a utility that will give us some metrics on your VB6 project. It can be found at http://www.bkeeney.com/vb2rbconversion/