Bring back Classic Visual Basic, an improved version of VB6
The silent majority of VB6 users did not ask for changes that came with .NET
We request Microsoft brings back classic Visual Basic as COM development is back with Windows 8.
David Platt wrote an excellent article about why classic VB still thrives:
We have read all of the comments on this thread and I’d like to thank you for providing your constructive feedback on this issue. Instead of merely repeating our support and migration guidance that has been laid out on http://msdn.com/vbrun, I’d like to address some of your specific comments here.
To play back the feedback themes we’re hearing:
- VB6 is awesome
- VB6 needs to be brought forward and maintained: in a new release or OSS
VB6 was and still is without a doubt awesome. VB6 made developers incredibly productive building a breadth of applications and as a result we have a wealth of applications and passionate developers to this day in 2014. One way I see our mission in developer tools is to empower developers to solve problems. This includes both today’s problems AND the problems of tomorrow. VB6, as you all have stated repeatedly in this thread, is an excellent tool for solving the problems of its day. We also stand behind our decision starting in 2002 to meet the current demands of our developers and the industry with .NET. For the scenarios VB6 set out to do, we see VB6 being “complete”. We feel good about VB6 being able to continue maintaining their applications for the past 15 years. Current needs ranging from distributed applications and services, to web applications and services, to devices, to new architectures and languages, required fundamental changes to the whole stack. We looked at how we could accommodate these needs through incremental changes to VB6 while maintaining its essence, and that was not possible.
To address the modern needs we would need to go far beyond updating the language. We have to remember that VB6 is not just a language. VB6 is a language, a runtime, a platform library, a tool/IDE, and an ecosystem tightly packaged together in a way that made all of them work well together. We’ve worked with many customers on migration from VB6 to .NET and found that while yes, there are language changes, the dominating factor in migration difficulties isn’t the language differences. Even open sourcing the language/runtime wouldn’t solve the fact that VB6 was thought for a different set of problems, and the fact that its strength came from the end-to-end solution provided by all these five pieces working together. Take a change like 64bit, the complete runtime, tools and ecosystem chain would need to be retooled.
So, moving forward what can we do? Where we have been able to help move forward is in our stance around support and interoperability. The VB6 runtime it is still a component of the Windows operating system and is a component shipped in Windows 8.1. It will be supported at least through 2024. This ensures your apps and components continue to run as you incrementally move forward to .NET. The support policy is here: http://msdn.microsoft.com/en-us/vstudio/ms788708. There are numerous interop strategies that we developed and evolved to enable incremental migration as you upgrade your skills, described here: http://msdn.com/vbrun.
In summary, VB6 was awesome. We agree. We don’t expect or demand anyone to throw away their code or rewrite from any of our technologies unless it makes business sense for them to do so. We have to innovate to enable our customers to innovate. It is not a viable option to create a next version of VB6. We stand by our decision to make VB.NET and the .NET Framework. We think they are awesome too. It is not feasible to open source VB6 tools chain and ecosystem. The VB6 runtime was last shipped in Windows 8.1 and will be supported for the lifetime of Windows 8.1. Support and interop are great tools to move forward incrementally.
I hope you feel we’ve listened to your feedback and that I’ve explained things well enough that you understand our decision.
Group Program Manager
Microsoft Visual Studio Cloud Tools
axisdj thanks very much for confirming that. You know what, I'm going to download it and learn it with full gusto. If it does what I need I'll not only implement it but write about. :-)
We can compare notes where appropriate etc..
1. Does Lazarus has an IDE comparable to VB6?
2. Does create 64 bit apps?
Yes and Mac and Linux
3.Can it connect to Oracle databases?
Only challenge is learning the object pascal language
1. Does Lazarus has an IDE comparable to VB6?
2. Does create 64 bit apps?
3.Can it connect to Oracle databases?
Jaap because B4J complies a Java program there are 2 problems:
Code security , even obfuscated algorithms can easily be copied or altered
Hardware interaction: 90% of what I do includes talking to external custom hardware, writin java wrappers for all those libraries takes too much time and effort.
Currently still exploring Lazarus and so for so good.
Jaap G commented
Have a look at B4J at https://www.b4x.com/
Runs VB6 source almost unaltered.
@Wolfgang Wolf, I do as well, but my company needs to move to MAC and Linux. I am re-assessing Lazarus and so far I am finding it might be the solution.
I really do love the power of VB6, along with vbrichclient I can do anything a QT, .NET or any other framework can do with less dependencies and faster dev time.
Wolfgang Wolf commented
@MichaelE & @axisdj
The native binaries of VB are very good in a Windows environment and are supported by all versions of Windows.
Together with the CodeSmart tools, the VB-IDE is a modern development environment with no limitations.
Modern GUIs are possible with few and cheap additional tools.
I create really good applications with it. I do not need anything else!
I gave Pure Basic a good look to about 2 years ago. Great and mature language and compiler. I have to agree its not VB6 though.
It is capable of creating most any Windows client based solution with a FRACTION of the overhead of .Net.
IDE does not match that of VB6 and the language is not the same.
If they could create a VB6 language update module matching VB6 syntax and match the crazy productive VB6 IDE I'd be there full time.
Take note: It is NOT that the language and IDE are different. It is that VB6 syntax and IDE are better\easier in many ways. That said, Pure Basic can do anything in Windows.
After much consideration, and feedback from pure basic community, it may not be a good fit for vb6ers. I am now back to trying Lazarus. It is really frustrating how good vb6 is and how hard it is to find a replacement!
@axisdy: PureBasic can't Edit&Continue
Which database can be used in PureBasic?
Currently I use JetEngine (DAO 3.51)
I make a living from my apps written in VB6, it is the most important part of my bussiness. Becuase of that, since MS has threatened to drop support for vb6 I have been looking for a replacement. I have looked at almost every possible vb6 replacement that is cross platform.
In recent weeks a fellow developer made me aware of PureBasic. A cross platform Basic style compiler and IDE. Event though im not an OOP disciple I did miss classes but luckily found a plugin SimpleOOP which integrates classes into PureBasic ( and along the way I now under stand how C++ evolved from c to include classes structs with vTables)
The main thing the PureBasic GUI IDe is lacking is the RAD double clicking on a control to add code. Some of the BASIC syntax is a bit different but pretty close to vb6.
Here is my point to bring this up to you guys.
I encourage all to go have a look. I think (olaf correct me) that vbrichclient may even work in purebasic.
I think if a simple gui plugin is written for easy event editing in GUI like VB6, purebasic could be the cross platform vb6 we have always wanted.
We have a really BIG vb6 community here and I think if many of us moved to pureBasic, our obsolete issue will be solved, not to mention our dependence on MS.
I do think if many of us are going to move to PureBasic it still needs one plugin to make it more like VB6, and that is the reason I am posting it here.
Thanks for your time.
Check out pureBasic. A cross platform basic written in 'C'.
It is very interesting that C "completed a comeback".
I wonder if Microsoft will truly grok that older languages that have had an impact on the world do not and will not go away.
Microsoft we are still here. VB6 is more relevant than ever. Reinvest in us!
Visual Basic was launched by Bill Gates at Windows World on May 20, 1991 and since then has gone through has fourteen releases. The pinnacle release, as far as many of are concerned was VB6, the final non-dot-net version. To celebrate VB's Silver Anniversary let's re-open the campaign to open source VB6.
Microsoft's support statement for VB6 programming is here...
The Visual Basic team is committed to "It Just Works" compatibility for Visual Basic 6.0 applications on the following supported Windows operating systems:
Windows Server 2016
Windows Server 2012 including R2
Windows Server 2008 including R2
The Visual Basic team’s goal is that Visual Basic 6.0 applications continue to run on supported Windows versions.
As detailed in this document, the core Visual Basic 6.0 runtime will be supported for the full lifetime of supported Windows versions, which is five years of mainstream support followed by five years of extended support
The VB6 runtime will ship and will be supported in Windows 10 for the lifetime of the OS (that is until at least 2025).
The VB6 runtime will ship and will be supported in Windows Server 2016 for the lifetime of the OS (that is until at least 2027).
There is a new release of the utility to install the VB6 programming IDE on Windows 7 and Windows 10 http://nuke.vbcorner.net/
The VB6 IDE should install and run on Windows 10.
Use this utility to install it http://nuke.vbcorner.net/
Another way is to set up an XP virtual machine on Windows 10, but this isn't as good. I use the VB6 IDE directly on Windows 10 64-bit with no issues.
What you experienced was typical of many VB developers.
VB.Net is a completely different language compared to the VB6 programming language.
Microsoft never got a usable migration tool, and abandoned the one they had after VB2008.
It was this lack of compatibility that prevented VB.Net from becoming popular, and why it has so few users today.
A quick and easy way to modernize the look of VB6 applications is to add a manifest.
A manifest is a Microsoft defined XML file that provides further data about an application. Of particular interest here is the ability to specify that the VB6 application will be aware (that is it will use) the newer visual styles (themes) used in newer versions of Windows.
A couple of minutes work can transform the look of VB6 apps.
A far better solution than spending weeks or months re-writing an application in an obsolete language like VB.Net.
I run a small consulting practice that works with charitable organizations that rely on a VB6 application that was first developed under XP, then in the XP Module running in Win7. Unfortunately, Win10 will not support the XP mode. Fortunately, the app works on Win10 but the VB6 IDE does not readily work on this platform. This application uses a number of 3rd-party controls and has about 500K lines of code in 8 modules. It's a very complex application that took about 10 years to fully develop. Given that I am only a few years away from retirement, I do not have the time nor financial resources to convert to .net. When the application no longer is supported in newer OSs, I am out of business. I may not be the only one out there in this situation.
Is there a working migration tool?
If not, then just be quiet.
Nobody will reprogram a business application that has been growing for years.
For whatever reason. MS has guaranteed the viability of VB6 applications until 2026, and MS will extend it as long as there is Windows