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
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
What you mention must have been about 10-15 years ago. Just check out the new Visual Studio. It is Free! (Community version). C# or VB.Net are currently the best Windows platforms. Did you try WPF? It rocks. You really don't need to fool around with VB6 patches and unstable 3rd parties for a modern look. DotNet has it all. NET framework is more relevant than ever. VB6 is dead and will never come back.
I realy made much efforts to migrate from VB6 to vb.net but i gave up. my "Via doloroza" as follows: before few years i tried for 1 year to built my big program with vb.net. i even bought Visual Studio 10 for 750$. the migration tool of Microsoft very poor and cannot be effective becuase of the differences between vb.net and vb6. i also tried 3'd party for migration. At last i gave up and still continue with VB6. i have hundreds of customers who use and like my big business program that is written by VB6. I still waiting for Microsoft to do something to improve VB6 to next generation. Meanwile i learn Java and Python.
You can also replace many of the Microsoft controls with Krool's controls, which are compatible with Microsoft's but updated to support visual styles, and other new features too.
The quickest way to update the look of your VB6 programming is to add a manifest.
The link axisdj gives http://www.vbforums.com/showthread.php?845909-VB6-Manifest-Creator-II shows how to do this.
You can also add a manifest to the VB6 IDE.
A few minutes work can simply update the look of your VB6 apps.
@Anonymous (but the look is outdated), look here:
@Anonymous, It is easy to get a modern look in vb6. you can use vbrichclient, and other options like creating you own custom button using a picturebox, or using application manifest: http://www.vbforums.com/showthread.php?845909-VB6-Manifest-Creator-II
This is not about the working in any windows versions.., This is about the look., VB6 coding is far more superior than any other., But the look is outdated .., We need a better VB6 appearance., If that explains everything..,
I saw a video recently that said "if you have an iphone, you can track your cycles at the click of a button. I believe there is an android app for that too; and if you have a Windows phone, I guess you can use it to carve the numbers into a rock". And that about sums up where MS has gone.
In my new environment, I am surrounded by people who use either a Mac or, reluctantly, Win 7. They apologise profusely if I must use W10. (To be fair, W10 is okay if you don't mind having to use Cortana to find your programs, to sign into everything, and can put up with daily changes because you can't turn off automatic updates (except on specific networks which is fine if you don't move). Microsoft is the epitome of success breeds contempt. It is becoming irrelevant. Dot Net itself is poopooed by developers and is fast becoming a second rate dead end.
There are career programmers who don't mind pounding the shift key putting squiggly brackets and parenthesis eveywhere until their code looks like Egyptian hieroglyphs, and then having to decipher gobbledygook errors when they forget the ";" at the end of a line or, god-forbid, use incorrect case. This is a careerist's gravy -- as much as doctors & lawyers invented a new language and writing style to obscure their methods and protect their industry, so it would seem the career programmers hide the simple behind jargon and layers of bloatware, text only IDEs, separate compilers, linkers and GUI builders.
Then there are those who just want to get the job done, to not have to wait a minute for compilation or a day installing a new framework, to use a powerful but simple "app" to produce a scripted equivalent of a spreadsheet. That's what VB6 is (not forgetting that VB6 is indeed the core of the scripting language in Excel). Someone invented VB, perfected VB6, then someone else came along and trashed it because it didn't fit the fashionable hieroglyphs and bloatware mantra. And along with it, our faith in them died. Currently, my W7 still makes a good desktop, but I am looking at Mint as Linux is now better supported by the open source community. For anything else, I use a Linux box or no OS. RIP MS.
Microsoft seemed to be suffering from a strain of collective pyromania, obsoleting stuff for fun, then hiding it behind patents and legalese to ensure no one can replicate what they have done (let's just remind ourselves that open source and Linux exists largely to escape the patent trolls). This is commercial bulimia. Dine well, engorge your coffers, then throw it all up again. Repeat until dead.
We have a clinical term for this disorder where I come from.. It's called pig ignorance.
I wrote that before I saw the excellent MichaelE video: https://preview.tinyurl.com/ydechhr3 .. :-)
Thanks for posting. Great article!
"Big words and fancy programming techniques are asocial. They turn you into a jerk. Even the people who think that you are smart won’t enjoy working with you. We might be impressed by people who use big words, but we don’t want to hang out with them. It is annoying to collaborate with programmers who throw the big guns every little chance they get.
Complexity scales poorly. It is much easier to build on your previous work if it is simple. There is a reason we still teach Newton’s three laws. They are powerful because they can be expressed so simply. A simple piece of code that uses few features is easier to reuse."