I suggest you ...

12,081 votes
Sign in
or sign in with
  • facebook
  • google
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Eugene shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →

    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.

    Paul Yuknewicz
    Group Program Manager
    Microsoft Visual Studio Cloud Tools


    Sign in
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)
      • Richard Gump commented  ·   ·  Flag as inappropriate

        VB6 was probably the best development tool MS ever developed. I looked at .Net and found it to be fat and blotted. I then started using Access because I can make it act like VB6 for the most part. MS doesn't care about its developers that really liked VB6. Since .Net is all they have, most have moved to it.
        If MS did come out with a new VB6, I think they would be surprised at how many copies they would sell.
        Would be nice though!

      • Anonymous commented  ·   ·  Flag as inappropriate

        An update to VB6 would make my life sooo much easier. I have tons of code to maintain in the cabinet manufacturing industry and there just aren't enough hours in the day to do a re-write in .net.

        The recent breaking of mscomctl ocx's by microsoft updates has further hurt their image in my opinion.

        Be a hero Microsoft and give us some love!

      • Anonymous commented  ·   ·  Flag as inappropriate

        It sounds good to me. I am not sure what an improved version of VB6 would be like.
        It may have been a third party that developed VBUnit3 for unit testing VB6 code.
        It works much like NUnit (for .NET code) and JUnit (for JAVA code).
        I work in WindowsXP and dabble in Windows7. I work with MS Access2000 because I have not found a way to connect with MS Access2010, yet.

        It seems that if I wanted to work in another part of the world, I could make money with VB6.

      • Anonymous commented  ·   ·  Flag as inappropriate

        I did not know XYplorer. I have now tested the program and can say:
        Congratulations XYplorer, congratulate VB. Here the power and quality of VB is well visible.
        W. Wolf

      • Don commented  ·   ·  Flag as inappropriate


        FYI, one of the top file managers for Windows is written in VB6: XYplorer. 200,000+ lines of pure classic VB. It has no problem at all, apart from the missing 64-bit compiler which would be really nice to have.

        Don (author of VBspeed and XYplorer)

      • Disappointed. commented  ·   ·  Flag as inappropriate

        Dam, I really wanted to post back on this but I have to agree to "uservoice.com"'s TOS and I hate to agree to anything withing reading it... After yawning a few too many times, I've deleted my comment and wrote this. Sorry uservoice.com but "I DO NOT AGREE TO YOUR TERMS OF SERVICE", it was too long of a read for me considering my comment was less than a paragraph!

        Have a nice day!

      • ssjx commented  ·   ·  Flag as inappropriate

        vb6 is very suitable for develop mobile apps.
        here: http://www.basic4ppc.com/
        Basic4android is for android, it 100 times faster than android studio, very fast, very simple, many many users use Basic4android.
        But Basic4android is still not so good as vb6. if microsoft can let vb6 to develop for win8, it will very fast, very simple.

      • Anonymous commented  ·   ·  Flag as inappropriate

        vb6 is too good to give it up. it is the best software for electronic engineers, who don't want to spend too much time in writing code.

      • VB6 Programming commented  ·   ·  Flag as inappropriate

        Yes, it's impressive to see VB holding the 7th place, even though there hasn't been a new version for 15 years. Vb.Net has improved to 11th position.
        Any other manufacturer would be happy to have a product in the top 10. Yet Microsoft still continues to ignore VB6.

      • Anonymous commented  ·   ·  Flag as inappropriate

        I followed Basic since GWbasic until .net. The program I have built up over the years grew to 50K lines of code and I couldn't see spending months changing it to work in .net while not gaining anything I needed. I don't care if my code is not OOP, it works. OK, it's not as maintainable as it might be, but as long as I am the maintainer, that's not a problem. I need to spend my time handling new challenges for the program and not retraining for me. My program handles the XML or binary file structures of various GPS manufacturers and they keep coming up with new ones. I can do that in VB6 and haven't seen anything in .net that would make it easier.

      • ssjx commented  ·   ·  Flag as inappropriate

        HI, guys , I found a very good replacement for vb6.

        1. Basic4android for mobile develop, please see here:
        2. B4J - The simple way to develop cross platform, desktop applications! it is free!

        These two develop tools is more than ten times faster than vs2010 and ellipse. and hundreds times smaller than vs2010 and ellipse,I very like these two tools, the compay Anywhere Software is the hero, it is the new Borland.

      • Anonymous commented  ·   ·  Flag as inappropriate

        This is an interesting concept and an interesting discussion.
        I used VB4 and VB5 (along with good old Pascal!) when studying for my diploma in software development (yep back in the day!)
        In my degree studies I used VBA and C++

        My first 'real' job (as a junior software engineer) after graduation was developing with TCL, VB5 (for Windows apps) and C (for DOS apps).

        TCL was already a dead language back then, and VB5 had been super-ceded by VB6. Now, when I moved into a new role I was coding in VB6 (with an Oracle back-end) full time.

        I saw some crazy-*** code in some of the VB6 systems, and I ALSO saw some well programmed and easily maintainable code. As others have said, it comes down to the programmer and NOT the language. In fact, the 'bad things' that could be/can be done with VB6 showed me how 'not' to do things, and for that reason, it was a great language for me to learn fully and become an experienced developer.

        There are some myths surrounding VB6 too; such as -
        - It is not OO (it is, it just doesn't support overloading or true polymorphism. However, you can create full classes in VB6 complete with encapsulation and inheritance)
        - It allows you to use 'undeclared' variables (it can, but any decent developer would NOT do this. Also, a simple setting in the compiler options stops the IDE from allowing undeclared variables)
        - It allows you to use Variants (yes it does, but in a well written application they are not used)
        - VB6 makes you write spaghetti code (again, this is down to the developer and NOT the language)
        - You cannot 'multi-thread' with VB6. Well, actually it is possible. It is not 'easy' per se, but multi-threading can be achieved with a VB6 application. In fact, learning multi-threading in VB6 gives a good understanding of what is actually 'happening' on the machine

        VB6 was a great language, and in the right hands it was a powerful tool with which a good developer could create a large scale maintainable application.

        These days I mostly use VB.Net and C#.Net (have done since .Net 2.0), but there is still a requirement to maintain and enhance legacy systems written in VB6. Many of them work well and there is no 'business need' to re-write them in .Net.

        For me, it is simple: I use the tool that I think is best for the job in hand. If it is ASP.Net, WinForms, VB.Net, C# etc etc...

        A broader rule is .Net for all new developments, and VB6 to keep those old faithful's running!

        VB6 tends to receive a bad rap from many, with some people even saying 'it forced them' to write poor code; which is, of course, utter nonsense.

        I have a soft spot for VB6, and if it was given a make-over to include full 64-bit support, dynamic grid controls and a tighter compiler (as a rule) etc then I cannot see what the problem would be?

        If the likes of COBOL continue to evolve (which I think is great), why not 'classic' VB?

        I bet Microsoft would be onto a winner if they gave the development community something along those lines...

      • Howard commented  ·   ·  Flag as inappropriate

        The language we choose to code with should not be subject to the whims of the developer of that language. When we originally purchased our copy of Visual Basic, we were given a license to develop with it not with a stipulation that at some future time the creator might say "This is dead, you may no longer use it".

        Now, the creator of the language may decide to no longer support it, society at large may decide it is no longer the preferred development language used in the mainstream, but that does not preclude enthusiasts (or evangelists) from continuing to successfully use it in accomplishing their objectives.

        I have made a career out of developing with Visual Basic beginning about 25 years ago - even working with competing predecessors as they first began to emerge. When Microsoft released Visual Basic, I saw the future and the impact it would have. As a result, I have been blessed to be very successful in my career. Now, far enough along, and successful enough that I no longer need to be working for "the man", I can march to my own drummer and continue developing with Visual Basic, and am still extremely successful. In perfecting my skills over my career, I know that my productivity rivals 10 decent Java developers to get the same job done. It allows me to continue to be successful working for myself, on my own terms, and not a corporate blob.

        I don't have any issues with folks who prefer Java, or whatever flavor of Visual Studio tickles their fancy - it's a choice. By the same token, if Visual Basic, VBA, VBScript, etc. gets the job done for me, and allows me to create robust, reliable, high-performance systems, I fail to understand why so many others take issue with it.

      • Anonymous commented  ·   ·  Flag as inappropriate

        All my programs are in VB6 and they work amazing years after MS deemed them dead!!!

      • Dean commented  ·   ·  Flag as inappropriate

        It would only need one or two dedicated individuals to make it work, and a community would grow around them.

        Example is blender, commercial software that got canned and went open source, now available in linux distributions.

      • SuperDre commented  ·   ·  Flag as inappropriate

        Yes Deanm but opensource isn't the answer too, Yes you can make changes yourself, but unless it is supported by a community and not fragmented as **** (so only 1 continuation) it's a **** of work to support it yourself.. A lot of businesses don't have the time to make changes themselves (because lack of time or knowledge)..

        I ofcourse would love it, as we already do a lot using extra addins (but creating addins isn't easy) but would benifit from just doing it directly in the IDE, and ofcourse fix those pesky bugs on windows 7..

      • Dean commented  ·   ·  Flag as inappropriate

        Microsoft's way of retiring VB6 and windows XP is a perfect example of how open source software is now the preferred way forward.

        Most VB6 users would be happy with some simple changes - modern looking forms, 64 bit support.

        These changes probably wouldn't be difficult.

        Because Microsoft is sitting on the code, and not allowing anyone else to touch it, we can see a lot of systems out there looking old and tired, not being compatible etc

        This is clearly hurting businesses.

        If the code was open source, anyone could make these changes.

        Microsoft clearly want to lock businesses in to pointless upgrades to generate money for themselves, even if it means causing them expensive problems.

        What a sad situation these businesses now find themselves in.

      • Madrianr commented  ·   ·  Flag as inappropriate

        I have resigned myself to the fact that VB6 is dead now but what really bothers me is that it is not clear today which technology I should use to build advances LOB's (WinForms, WPF, ASP.NET)


      Feedback and Knowledge Base