Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. VB6 - far from dead!

VB6 - far from dead!

Scheduled Pinned Locked Moved The Lounge
c++csharpphpvisual-studio
79 Posts 31 Posters 41 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • N Nish Nishant

    At least on CP: http://www.codeproject.com/script/Answers/List.aspx?tab=active&tags=75[^] Why are people still using this? I mean why not VB.NET? [I don't believe that people using VB6 would use the native code vs managed code argument]

    Regards, Nish


    My technology blog: voidnish.wordpress.com Part 2 in my WinRT/C++ series : Visual C++ and WinRT/Metro - Databinding Basics

    G Offline
    G Offline
    Gregory Gadow
    wrote on last edited by
    #15

    I can think of several reasons. As others have mentioned, there is legacy code. Second, not every shop has the money to switch to VB.net, even if they have the interest: if they are already maintaining a significant codebase in VB6, and already have the expertise and compiler software, and everything is working just fine, why go to the effort and cost of changing? In my experience, the computer industry is pretty conservative when it comes to changes. When I started at my current company in 1996, I was hired because I was the only applicant who admitted to knowing COBOL: they needed my skills because our enterprise database -- which had been in place and largely unchanged since the early 1980s -- was a non-relational database on a Rand-McNally minicomputer with a JCL-like form generator for the user interface that used hundreds of COBOL applets to manipulate data. The one and only reason we got rid of it in 1999 was federal mandate to "address the Y2K problem" in the financial industry. Thirteen years later, we are still using the VB6 (originally VB4) application that replaced it, although we have plans to upgrade to a VB.Net version in a few months that will no doubt continue in use for at least another decade.

    M 1 Reply Last reply
    0
    • N Nish Nishant

      Rama Krishna Vavilala wrote:

      Why not?

      VB6 has not culturally been a toolset/language used by people with performance requirements.

      Regards, Nish


      My technology blog: voidnish.wordpress.com Part 2 in my WinRT/C++ series : Visual C++ and WinRT/Metro - Databinding Basics

      J Offline
      J Offline
      Julien Villers
      wrote on last edited by
      #16

      Nishant Sivakumar wrote:

      VB6 has not culturally been a toolset/language used by people with performance requirements.

      FTFY. Sorry couldn't resist :laugh:

      'As programmers go, I'm fairly social. Which still means I'm a borderline sociopath by normal standards.' Jeff Atwood 'I'm French! Why do you think I've got this outrrrrageous accent?' Monty Python and the Holy Grail

      1 Reply Last reply
      0
      • N Nish Nishant

        At least on CP: http://www.codeproject.com/script/Answers/List.aspx?tab=active&tags=75[^] Why are people still using this? I mean why not VB.NET? [I don't believe that people using VB6 would use the native code vs managed code argument]

        Regards, Nish


        My technology blog: voidnish.wordpress.com Part 2 in my WinRT/C++ series : Visual C++ and WinRT/Metro - Databinding Basics

        P Offline
        P Offline
        Paul Conrad
        wrote on last edited by
        #17

        Nishant Sivakumar wrote:

        Why are people still using this? I mean why not VB.NET?

        There is legacy code unfortunately written in VB6 that is still out there. I know of some software shops I've worked with that have cited the move from VB6 to VB.NET is something they have planned to do, and the move for some of them have been slow because of money and other reasons leaning towards office/interdepartment politics.

        "The clue train passed his station without stopping." - John Simmons / outlaw programmer "Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon "Not only do you continue to babble nonsense, you can't even correctly remember the nonsense you babbled just minutes ago." - Rob Graham

        1 Reply Last reply
        0
        • G gavindon

          Oh I don't know about that. I wish I had my old Mach1 back, and I would most certainly still race it.(probably a good reason for me NOT to have it back, truth be told) EDIT: because I apparently cant spell today.

          Let's face it, after Monday and Tuesday, even the calendar says WTF! Be careful which toes you step on today, they might be connected to the foot that kicks your butt tomorrow. You can't scare me, I have children.

          S Offline
          S Offline
          Slacker007
          wrote on last edited by
          #18

          Did you mean the "Mach 1"?

          Just along for the ride. "the meat from that butcher is just the dogs danglies, absolutely amazing cuts of beef." - DaveAuld (2011)
          "No, that is just the earthly manifestation of the Great God Retardon." - Nagy Vilmos (2011)

          G 1 Reply Last reply
          0
          • S Slacker007

            Did you mean the "Mach 1"?

            Just along for the ride. "the meat from that butcher is just the dogs danglies, absolutely amazing cuts of beef." - DaveAuld (2011)
            "No, that is just the earthly manifestation of the Great God Retardon." - Nagy Vilmos (2011)

            G Offline
            G Offline
            gavindon
            wrote on last edited by
            #19

            !@#$#@!$ I'm going back to bed. I knew that didn't look right and typed it anyway.

            Let's face it, after Monday and Tuesday, even the calendar says WTF! Be careful which toes you step on today, they might be connected to the foot that kicks your butt tomorrow. You can't scare me, I have children.

            1 Reply Last reply
            0
            • N Nish Nishant

              At least on CP: http://www.codeproject.com/script/Answers/List.aspx?tab=active&tags=75[^] Why are people still using this? I mean why not VB.NET? [I don't believe that people using VB6 would use the native code vs managed code argument]

              Regards, Nish


              My technology blog: voidnish.wordpress.com Part 2 in my WinRT/C++ series : Visual C++ and WinRT/Metro - Databinding Basics

              _ Offline
              _ Offline
              _beauw_
              wrote on last edited by
              #20

              This does not answer your exact question, but I do think it's important to remember that VBA and Office automation are both tightly coupled with some aspects of the "Classic VB" architecture. I think that this will probably continue to be true for some time. VBA is very much a member of the "Classic VB" language family, and until Microsoft offers something similar that's built on more modern underpinnings, people will continue to do VBA development, especially with Microsoft Access. More generally, Office automation is based on COM and in particular on ActiveX. I am a bit surprised this is still the case. When I first started using .NET, I expected the "PIA" wrappers used to do Office automation would get replaced with .NET-based equivalents within a reasonable time frame. This has not happened, and as a result the .NET languages do not offer a really compelling advantage for doing Office automation. If anything, VB6 (which was largely just a clever tool for commanding ActiveX components) probably still provides a better developer experience for this sort of work. Certainly this is the case if one is already familiar with VB6.

              N 1 Reply Last reply
              0
              • _ _beauw_

                This does not answer your exact question, but I do think it's important to remember that VBA and Office automation are both tightly coupled with some aspects of the "Classic VB" architecture. I think that this will probably continue to be true for some time. VBA is very much a member of the "Classic VB" language family, and until Microsoft offers something similar that's built on more modern underpinnings, people will continue to do VBA development, especially with Microsoft Access. More generally, Office automation is based on COM and in particular on ActiveX. I am a bit surprised this is still the case. When I first started using .NET, I expected the "PIA" wrappers used to do Office automation would get replaced with .NET-based equivalents within a reasonable time frame. This has not happened, and as a result the .NET languages do not offer a really compelling advantage for doing Office automation. If anything, VB6 (which was largely just a clever tool for commanding ActiveX components) probably still provides a better developer experience for this sort of work. Certainly this is the case if one is already familiar with VB6.

                N Offline
                N Offline
                Nish Nishant
                wrote on last edited by
                #21

                _beauw_ wrote:

                If anything, VB6 (which was largely just a clever tool for commanding ActiveX components) probably still provides a better developer experience for this sort of work. Certainly this is the case if one is already familiar with VB6.

                Totally agree. VB6 was (still is) the greatest COM client ever invented.

                Regards, Nish


                My technology blog: voidnish.wordpress.com Part 2 in my WinRT/C++ series : Visual C++ and WinRT/Metro - Databinding Basics

                _ 1 Reply Last reply
                0
                • N Nagy Vilmos

                  In defence of some software houses the cost of upgrading from VB6 has been too high. Where I worked previously, their was a multiyear project to move everything from VB6 to C#, but it couldn't be done in one hit. The plan when I left was that it would take another 2-3 years.


                  Panic, Chaos, Destruction. My work here is done. Drink. Get drunk. Fall over - P O'H OK, I will win to day or my name isn't Ethel Crudacre! - DD Ethel Crudacre I cannot live by bread alone. Bacon and ketchup are needed as well. - Trollslayer Have a bit more patience with newbies. Of course some of them act dumb - they're often *students*, for heaven's sake - Terry Pratchett

                  B Offline
                  B Offline
                  BobJanova
                  wrote on last edited by
                  #22

                  But upgrading VB6 (that isn't a horrible mess of spaghetti and implicit declarations that needs rebuilding anyway) to VB.net is nowhere near such a big hit, as most of the code will work with no or minor alterations.

                  N D 2 Replies Last reply
                  0
                  • N Nish Nishant

                    _beauw_ wrote:

                    If anything, VB6 (which was largely just a clever tool for commanding ActiveX components) probably still provides a better developer experience for this sort of work. Certainly this is the case if one is already familiar with VB6.

                    Totally agree. VB6 was (still is) the greatest COM client ever invented.

                    Regards, Nish


                    My technology blog: voidnish.wordpress.com Part 2 in my WinRT/C++ series : Visual C++ and WinRT/Metro - Databinding Basics

                    _ Offline
                    _ Offline
                    _beauw_
                    wrote on last edited by
                    #23

                    Nishant Sivakumar wrote:

                    Totally agree. VB6 was (still is) the greatest COM client ever invented.

                    Exactly... and Microsoft shows no signs of being able to do away with COM. Everything they try to do to replace COM seems to end up wrapping COM instead (and that's not so much an indictment of Microsoft as it is a simple fact of nature).

                    V 1 Reply Last reply
                    0
                    • B BobJanova

                      But upgrading VB6 (that isn't a horrible mess of spaghetti and implicit declarations that needs rebuilding anyway) to VB.net is nowhere near such a big hit, as most of the code will work with no or minor alterations.

                      N Offline
                      N Offline
                      Nagy Vilmos
                      wrote on last edited by
                      #24

                      It was decided to re-implement everything as it is mostly 5+ years old with so many modifications it would be like trying to rewire Hampton Court one plug at a time.


                      Panic, Chaos, Destruction. My work here is done. Drink. Get drunk. Fall over - P O'H OK, I will win to day or my name isn't Ethel Crudacre! - DD Ethel Crudacre I cannot live by bread alone. Bacon and ketchup are needed as well. - Trollslayer Have a bit more patience with newbies. Of course some of them act dumb - they're often *students*, for heaven's sake - Terry Pratchett

                      1 Reply Last reply
                      0
                      • N Nish Nishant

                        At least on CP: http://www.codeproject.com/script/Answers/List.aspx?tab=active&tags=75[^] Why are people still using this? I mean why not VB.NET? [I don't believe that people using VB6 would use the native code vs managed code argument]

                        Regards, Nish


                        My technology blog: voidnish.wordpress.com Part 2 in my WinRT/C++ series : Visual C++ and WinRT/Metro - Databinding Basics

                        P Offline
                        P Offline
                        Paul M Watt
                        wrote on last edited by
                        #25

                        If it's not broke, don't fix it.

                        L 2 Replies Last reply
                        0
                        • _ _beauw_

                          Nishant Sivakumar wrote:

                          Totally agree. VB6 was (still is) the greatest COM client ever invented.

                          Exactly... and Microsoft shows no signs of being able to do away with COM. Everything they try to do to replace COM seems to end up wrapping COM instead (and that's not so much an indictment of Microsoft as it is a simple fact of nature).

                          V Offline
                          V Offline
                          Vark111
                          wrote on last edited by
                          #26

                          Didn't I read somewhere that the new WinRT uses COM as well?

                          N 1 Reply Last reply
                          0
                          • P Paul M Watt

                            If it's not broke, don't fix it.

                            L Offline
                            L Offline
                            Lost User
                            wrote on last edited by
                            #27

                            VB6 not broke?

                            S P 2 Replies Last reply
                            0
                            • N Nish Nishant

                              Rama Krishna Vavilala wrote:

                              Why not?

                              VB6 has not culturally been a toolset/language used by people with performance requirements.

                              Regards, Nish


                              My technology blog: voidnish.wordpress.com Part 2 in my WinRT/C++ series : Visual C++ and WinRT/Metro - Databinding Basics

                              N Offline
                              N Offline
                              NormDroid
                              wrote on last edited by
                              #28

                              VB is for the programmingly challanged.

                              Software Kinetics Wear a hard hat it's under construction
                              Metro RSS

                              1 Reply Last reply
                              0
                              • N Nish Nishant

                                At least on CP: http://www.codeproject.com/script/Answers/List.aspx?tab=active&tags=75[^] Why are people still using this? I mean why not VB.NET? [I don't believe that people using VB6 would use the native code vs managed code argument]

                                Regards, Nish


                                My technology blog: voidnish.wordpress.com Part 2 in my WinRT/C++ series : Visual C++ and WinRT/Metro - Databinding Basics

                                L Offline
                                L Offline
                                Lost User
                                wrote on last edited by
                                #29

                                Nishant Sivakumar wrote:

                                Why are people still using this? I mean why not VB.NET?

                                • They're accustomed to VB6
                                • It requires less resources (think old machines)
                                • They're heavily invested in VB6 and can't afford to update the sourcecode to a new framework

                                ..and some people still believe that you can only use VB6 to extend a VB6 application. One can seamlessly put some .NET in there using the Interop Forms Toolkit[^] :)

                                Bastard Programmer from Hell :suss:

                                M G 2 Replies Last reply
                                0
                                • G Gregory Gadow

                                  I can think of several reasons. As others have mentioned, there is legacy code. Second, not every shop has the money to switch to VB.net, even if they have the interest: if they are already maintaining a significant codebase in VB6, and already have the expertise and compiler software, and everything is working just fine, why go to the effort and cost of changing? In my experience, the computer industry is pretty conservative when it comes to changes. When I started at my current company in 1996, I was hired because I was the only applicant who admitted to knowing COBOL: they needed my skills because our enterprise database -- which had been in place and largely unchanged since the early 1980s -- was a non-relational database on a Rand-McNally minicomputer with a JCL-like form generator for the user interface that used hundreds of COBOL applets to manipulate data. The one and only reason we got rid of it in 1999 was federal mandate to "address the Y2K problem" in the financial industry. Thirteen years later, we are still using the VB6 (originally VB4) application that replaced it, although we have plans to upgrade to a VB.Net version in a few months that will no doubt continue in use for at least another decade.

                                  M Offline
                                  M Offline
                                  Marc A Brown
                                  wrote on last edited by
                                  #30

                                  Excellent answer. Probably pretty close to correct also.

                                  1 Reply Last reply
                                  0
                                  • L Lost User

                                    VB6 not broke?

                                    S Offline
                                    S Offline
                                    S Houghtelin
                                    wrote on last edited by
                                    #31

                                    harold aptroot wrote:

                                    VB6 not broke?

                                    Not VB in so much as those who abuse the um... "forgiving" nature of VB6 when it comes to stuff like loose variable declaration, hell you don't even need to declare a variable to use one. :) The beauty of VB6 was that they made it simple enough that a child could use it to program. Unfortunately most of the users program like children. :~

                                    It was broke, so I fixed it.

                                    I 1 Reply Last reply
                                    0
                                    • V Vark111

                                      Didn't I read somewhere that the new WinRT uses COM as well?

                                      N Offline
                                      N Offline
                                      Nish Nishant
                                      wrote on last edited by
                                      #32

                                      You read right! WinRT is new COM (COM with extra interfaces).

                                      Regards, Nish


                                      My technology blog: voidnish.wordpress.com Part 2 in my WinRT/C++ series : Visual C++ and WinRT/Metro - Databinding Basics

                                      1 Reply Last reply
                                      0
                                      • P Paul M Watt

                                        If it's not broke, don't fix it.

                                        L Offline
                                        L Offline
                                        Lost User
                                        wrote on last edited by
                                        #33

                                        I agree completely; one of the reasons that we are paying for an OS is the fact that it's backward compatible. I can rely on Windows to run the first edition of Railroad Tycoon. If it was possible 30 years ago to run it, then it should be possible to run it now.

                                        Bastard Programmer from Hell :suss:

                                        1 Reply Last reply
                                        0
                                        • L Lost User

                                          VB6 not broke?

                                          P Offline
                                          P Offline
                                          Paul M Watt
                                          wrote on last edited by
                                          #34

                                          it works for what it is. The thing is, an IT department may develop hundreds of line of business tools that just work. Here or there an adjustment may need to be made to the application to keep it compatible with other systems in the company that change. However, depending on the circumstances, it could be much less effort and expense to make minor modifications to an application that works than to rewrite from scratch. Then just move new application development to VB.Net or whatever language IT decides on as tools evolve.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups