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:
VB 6.0 should have never been put out to pasture. I see it as the underlying language in lots of applications from accounting packages to point of sale systems, astronomy to music production. It's at the heart of a couple radio station automation programs, and is used even in the storage space rental industry!
But VB 6.0 needs to be ported cross-platform so it can live with Linux servers, Mac, etc.
Even at this late date I still write apps in VB 6.0 because it's a snap to prototype. I also like the "backwards design" that is, writing from the interface backwards. This is probably why VB 6.0 apps are so user friendly.
There a lot of votes for a "improved" version of VB6. Which I think won't happen. So why don't Microsoft release vb6 compiler source code as Open Source?
Then if a third party or company want to continue develop and maintain "vb6" they can.
Our voices are united and we unanimously wish the return of Visual Basic 6.0 to the market !
Dear Microsoft, we still love you, but when will you get the point regarding VB6:
Dear brothers of the programming community, for those who see this message, please vote here:
Please, Microsoft, post an answer to http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/3440221 .
Thank you! Markus Melk
Since Microsoft has abandoned your most successful development language vb6 decade. But a lot of the old professional programmers are still using vb6, Can Microsoft send VB6 as a gift to these old programmer? Perhaps these old programmers can make VB6 run on the Window8 and Windows Phones. .NET is really too slow and too complicated.
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
Sten2005 - vote for VB6 programming commented
The article explaining how to install VB6 programming on Windows 7 has now had 410,000 views.
The article shows how to set up the VB6 IDE on Windows 7, both 32 bit and 64 bit.
There are similar articles for Windows 8 and Windows 10.
Please Gates give us back our VB6 on 64 bits right Now!
VB6 Fire commented
Please vote for Visual Studio 6 (it is important). Visual Studio 6 is there for users of VB6 programming to vote for.:
Sten2005 - vote for VB6 programming commented
Vote for which version(s) of Visual Studio you use:
Visual Studio 6 is there for users of VB6 programming to vote for.
>> You guys if have Office 2010/13 x64 installed, check "\Program Files\Common Files\Microsoft Shared\OFFICE14\EXPSRV.DLL"
Yes, that's the latest version (7) of VBA, which is basically Classic Visual Basic. It's still used in Office for macros because it's pretty simple for use, just like VB6.
I am quite sure the original source code of VB6 runtime/vm is still being updated
now and then by MS secretly. You guys if have Office 2010/13 x64 installed, check "\Program Files\Common Files\Microsoft Shared\OFFICE14\EXPSRV.DLL", see the exported functions,....this is basically just a msvbvm60.dll, except without GUI elements. I am sure Access 2010 can not run without it.
MS, just admit you can not live without VB, please bring back classic VB6!
I think tone of discussion suggesting towards end of vb6 as programming language. Its well established fact as far as microsoft MKT is concern. But i am surprise to see that till now .net(4.0Fx) using call to Ole32.dll & Other COM libraries which bring back the COM into picture think revamping VB6 would beneficial to so many SME business software , which heavily relay on it.... AT THE END WE ALL R DEVELOPING ALGORITHM BY USING PROGRAMMING LANGUAGE(S) , IF OLD ALGORITHM WORKS FINE..TECHNOLOGY LEAST MATTER.
Don't forget to vote here!
Anyone who blindly follows Fashion is gullible.
Anyone who ties themselves to one, particular Fashion House (because it seemed like the best one when that decision was made) is even further up a creek without a paddle.
That's where an awful lot of long-term VB "Proper" developers found themselves in 2002/3 when VB.Net was released, elbowing aside its similarly-named (but otherwise totally-dissimilar) forebear.
IMHO, .Net is all about fashion.
At least two versions of it are already obsolete, one of them (Fx1.1) having been killed off a full four years ahead of its mainstream product life cycle (because Our Friends in Redmond couldn't bend it any further in their attempts to implement an ever-evolving security standard).
It does strike me as just a little ironic that, in the latest versions of Windows, COM seems to be having something of a Renaissance and .Net just doesn't seem to fit with it all that well.
Veering dangerously back On-Topic;
VB6 is dead and buried; at least that what Microsoft would have you believe, but there are plenty of people around here still using (and learning) it, so I don't think it's gone quite yet.
VBA is still going strong, safe and secure inside Microsoft's flagship Office suite. It's showing no signs of disappearing any time soon, simply because .Net is too programmer-y; business users can run up "macros" in Word and understand them. Can you imagine them trying to get to grips with a .Net-ified, object-oriented replacement? There would be Personal Assistants rioting up and down the Land.
.Net languages abound, not just Visual Basic and C#, and are great for big, Enterprise-scale applications where you can hide everything on your own application/ web servers. For putting applications out onto people's own desktops/ laptops/ surfaces? Not so much. Windows Forms apps can be excellent (yes; I've written a few); I've yet to be convinced by the Xml-mania that is WPF.
Regards, Phill W.
A comment by dilettante: VB's history is unrelated to that of VB.Net, which is an entirely different compiler that isn't based on the prior work done in Microsoft Basic products... until it was cut short by the .Net fiasco.
VBA was an offshoot of VB, originally intended to replace crude efforts like WordBasic and move into other Office applications like Excel and Outlook. Later it was made available for a time to 3rd party developers as a macro language for other applications and you still see it there from time to time even though it is not offered to new developers anymore.
COM is native to Windows, and a core part of the operating system. It is not going anywhere despite the FUD spread in the lower tiers of the .Net community. ActiveX is a layer on top of COM, bringing in Automation (OLE), and this is what VB6 uses (not naked COM, which VB6 is not designed to use).
There is a fellow named Anders Hejlsberg. Back in the 1980s he came up with a product called Turbo Pascal.
Along came Windows and the DOS-bound Turbo Pascal just didn't cut the mustard anymore. Hejlsberg was mightily annoyed since the world turned its back on his little compiler which was no longer relevant. He also hated the new Visual Basic that Microsoft had come up with, partially because he didn't care for Basic as a language at all, mostly because the world was now ignoring him, and his ego was huge.
So he set out to create a Windows-oriented Pascal, which he called "VB Killer." This stole many concepts from the VB IDE and its Visual Form Designer, and became Delphi.
Some years later he used his connections to land a job at Microsoft, where, still grinding his teeth at the success of VB which grew with every new release, and now knowing Delphi was a dead horse, he ended up on a Microsoft Java team.
There he helped develop a divergent version of Java that was tightly bound to Windows and incompatible with standard Java. This was called Visual J++. However it infringed on and damaged standard Java, and the courts thought so too. Sun was able to win a lawsuit, and so Microsoft had to start erasing any trace of VJ++ and the Microsoft JVM. MS JVM headaches of course plague Windows users ever since, and it has become a minor stumbling point when trying to install VB6 today.
With the lawsuit underway and things looking grim for Microsoft's case, the evil Hejlsberg and his team got together with some lawyers and came up with a legally defensible clone of Java, This was called "Project COOL."
COOL became .Net and the language C#, but just to get more revenge on VB he managed to sell the Powers That Be that putting a "VBish" face on this would bring the VB community under the .Net shadow as well. So we got a VB.Net compiler that used syntax superficially similar to that of VB but different in subtle and hazardous ways, and of course with bizarre semantic and run-time differences.
The VB community hated the .Net travesty. Many moved elsewhere. Eventually the gullible accepted it and you see many of them here. After all, VB was killed off at VB6 and the .Net Roadshow managed to convince many employers to move. Most developers have no choice but to find employment to pay the bills, so a lot more jumped to .Net and started rationalizing their move and brainwashing themselves. Many now believe it is hot stuff, lobotomy completed.
.Net is an artificial layer just like Java. Windows with no .Net runs just fine and doesn't know the difference.
Don't forget to vote here!
I've been using .NET for 10 years now, I can remember all the main class libraries off the top of my head.
I'm now developing (by special request) a VB6 app. VB6 was my principle programming language where I worked between 2001 and 2004. Before and after it was C, C++, C#, and pascal!
Needless to say, doing this VB6 app was awkward, I don't remember much and introspection/intellisense is much more limited than what I'm now used to.
And yet, the app has been developed quicker than I expected. There **IS** something about VB6 that makes it a very powerful development tool.
Now I had always thought that VB6 was being retired because the COM technology on which it's based is being retired. Certainly you could not use VB6 for cross apps to smartphones.
But it seems to me that W8 is full of COM code, and even MS now realise that they are not going to 'port' their desktop users to phones by leveraging the environment (they risk losing out on BOTH sides!). Heck, the guy who specially requested VB6 is an iPhone freak, but he has NO plans to have this stuff on a mobile.
It does seem there is a good case for updating VB6.
by all means PLEASE bring VB6 Back...
Microsoft have opened the .NET code to open source platform github. Why do not have openend the vb6 code as the same way? Perhaps Microsoft thinks there is more business in vb6 than in the .NET (10 year after) :-D. MS still supporting vb6 he is saving a big card, i think the next new notice will be the vb7 (64bits) version than vb6 source code open :-D
Oliver duCille commented
Mr. Yuknewicz, can you not draw the stark distinction between your definition of innovate and the developer's definition of innovate? How can you not? Do you actually believe that there is no difference? Can you not contrast your world view with that of a developer? If you believe that they are the same, then you are truly in an ivory tower that is far and above our perspective. That much is obvious.
Oliver duCille commented
The wheel was invented eons ago. Sometimes, we need to leave perfection alone. IMHO, Microsoft tried to deep six VB6, not for a technical reason, but to sell more product. They miscalculated that the loyalty they had with those millions of VB6 programmers was more held by them, Microsoft, than for the great product they created, VB6. A grave miscalculation, indeed.
Sure, there was pent up demand for true full OOP with inheritance, operator overloading, etc. And, there is no question that we were all desperate for implementable and reliable multithreading also. Sure Microsoft listened, but only to a degree. They ignored the most important piece in their solution toward providing the fixes that VB6'ers were clamoring for.
What we didn't count on is Microsoft's lack of interest for not a smooth but seamless migration path from VB6 to dotnet. Microsoft left out a huge gap in the on-ramp from VB6 to dotnet. Could they have done more? That hurt a lot of people and put a bad taste in a lot of mouths. Who does that to their customers? The bitterness of that bad taste left in the collective mouths of literally millions VB6'ers will not wear away with time.
Microsoft must first remember, understand and incorporate this one singular principle of technology development described here: The Model A had four wheels and the standard axle width of the Roman chariot as far back as 2000 BC. The Tesla roadster is STILL based on those same two basic design pattern - four wheels and the same axle width of the chariot.
I believe that Microsoft still has the opportunity to reconcile this. And, I don't mean just a passive it-just-works kind of solution as evidenced by the continued support for VB6 through EOL of Windows 7 & 8. We want something more than this passive gesture. We want no less than an active, effective and robust solution from none other than Microsoft. I needn't elaborate on what's been discussed now many times over for some years.