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. What C# tools do you recommend?

What C# tools do you recommend?

Scheduled Pinned Locked Moved The Lounge
csharptoolshelpquestion
53 Posts 35 Posters 29 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.
  • S Slow Eddie

    I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

    If everything seems to be going well you are obviously overlooking someone or something....

    M Offline
    M Offline
    Marc Clifton
    wrote on last edited by
    #28

    As Balboos said, delete and rewrite. Anything in VB6 is going to look like an aborted fetus in C#. Not that it doesn't look like that already in VB6. ;)

    Latest Article - Class-less Coding - Minimalist C# and Why F# and Function Programming Has Some Advantages Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

    1 Reply Last reply
    0
    • S Slow Eddie

      I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

      If everything seems to be going well you are obviously overlooking someone or something....

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

      You mean "rewrite". Converting VB6 code to C# would mean using old COM-interfaces, where there's easier managed solutions available.

      Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^]

      1 Reply Last reply
      0
      • S Slow Eddie

        Thanks, I will check it out. And yes I am actually re-writing a functional clone as you suggest. Sorry I did not make that clearer. The Program is around 400,000 lines of code. :omg:

        T Offline
        T Offline
        TonyManso
        wrote on last edited by
        #30

        Ed Aymami wrote:

        around 400,000 lines of code

        Imagine how rewarding it will be when you can finally "select-all, delete!" the VB code :laugh:

        On the other hand, you have different fingers. - Steven Wright

        1 Reply Last reply
        0
        • P Pualee

          Nish Nishant wrote:

          things are done way differently in modern .NET than it was during the VB6 days

          :-D :laugh: ;P ;) That is highly dependent upon who you work with ;P ;) :laugh: :-D

          T Offline
          T Offline
          TonyManso
          wrote on last edited by
          #31

          Clearly, they never worked for a government agency. ;P

          On the other hand, you have different fingers. - Steven Wright

          1 Reply Last reply
          0
          • S Slow Eddie

            I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

            If everything seems to be going well you are obviously overlooking someone or something....

            R Offline
            R Offline
            RedDk
            wrote on last edited by
            #32

            You need one of these: http://com-sub.info/Mad/Welcome And a few tabs of Anacin.

            T 1 Reply Last reply
            0
            • S Slow Eddie

              I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

              If everything seems to be going well you are obviously overlooking someone or something....

              M Offline
              M Offline
              Marc Greiner at home
              wrote on last edited by
              #33

              You should look for a low code solution. I highly recommend DevExpress XAF. What is the budget for the project? C# with DevExpress XAF. With one low code solution in C#, you produce : - WinForms - Web (touch enabled) - multi-platform Mobile app with native look and feel. Your source code is mainly the description of your objects and their relations, where you add declarative validation and other goodies via attributes. Your application creates (or updates) the database automatically (including indexes, foreign keys, necessary n-n relation tables, etc.) and produces a beautiful default UI that you can fully customize, either in Visual Studio or at run-time. The learning curve is sharp, but well worth it. Everything is done by following best design patterns. See my answer to another similar question here, that includes links to tutorials and demos: Generic Multi Purpose .NET Layered Framework[^]

              T 1 Reply Last reply
              0
              • P Pualee

                Nish Nishant wrote:

                things are done way differently in modern .NET than it was during the VB6 days

                :-D :laugh: ;P ;) That is highly dependent upon who you work with ;P ;) :laugh: :-D

                K Offline
                K Offline
                kalberts
                wrote on last edited by
                #34

                In the 1970s, when structured languages such as Pascal were becoming widespread, the saying was that "You can do FORTRAN programming in any language!"

                1 Reply Last reply
                0
                • S Slow Eddie

                  I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                  If everything seems to be going well you are obviously overlooking someone or something....

                  M Offline
                  M Offline
                  m0sa
                  wrote on last edited by
                  #35

                  LinqPAD - http://www.linqpad.net is totally worth it. It's very nice to play around with small snippets and run them immediately / compare them to other languages.

                  T 1 Reply Last reply
                  0
                  • S Slow Eddie

                    I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                    If everything seems to be going well you are obviously overlooking someone or something....

                    R Offline
                    R Offline
                    Robert Chafer
                    wrote on last edited by
                    #36

                    I have done this - taken a large VB project (which I wrote) and converted it to a shipping product written in C#. A few things I learned 1. Don't convert the VB, write a new application. Take the lessons leaner from VB app and apply them using C# and .NET. Use it as an opportunity to improve the code and algorithms used, even if it is supposed to be functionally similar or the same. 2. Write something else in C# first. C# and VB6 are more similar than you would think but the differences are key. Write something using VS2017. Make your mistakes there. It doesn't have to be something big, just something to get you up-to-speed with it. 3. Whatever you think it will take, it will take longer. 4. Whatever you think it will take, it will take longer. 5. Consider the external parts of your VB project: OCXs References etc. If you don't have control of them it could make life tricky in C# land. 6. You asked about tools: VS2017 is the best tool you can use. Concentrate on that first!

                    1 Reply Last reply
                    0
                    • S Slow Eddie

                      I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                      If everything seems to be going well you are obviously overlooking someone or something....

                      C Offline
                      C Offline
                      clemenslinders
                      wrote on last edited by
                      #37

                      LS, I converted a few VB6 programs to C# and some more from VB.NET. When I joined the firm that I am currently working for they had a bunch of VB6 and VB.Net software and they wanted this translated to C# asap. Ofcourse the best way is to start all over, but that was not an option my boss wanted (and he is the boss so he decides). So I used VS2008 (it has a wizard for this) to translate VB6 into VB.NET.(Google will tell you how, but it is pretty straight forward). And for the VB.NET programs I used SharpDevelop 4.4 (make sure to use this version and NOT a newer version, because for some reason the took the convert option out). SharpDeveloper 4.4 (I am sure using google you can find this free software) has an option to convert VB.Net to C#. Load the VB.NET solution in SharpDevelop. Right click the solution and click Convert => C# (it has other convert options as well). You will find that is not perfect. A lot of times you will need to replace brackets like ( with [. Strings in VB.Net start counting from 1 in C# this is 0 (if you didn't use VS2008's wizard to convert from VB6 to VB.Net than you need to keep this in mind). You will need to create new screens (you can select everything and copy this to a new screen) and than make sure that the code is bound to this screen. You will also need to select for instance your buttons and select the correct click event to the click event of this button. Than when you compile there will be some references to some VB.NET stuff that cause an error which you will need to remove. Start with a simple project. If need be create a helloworld in VB6 and convert thus. I used these options to convert about 15 projects to C# and it saved us a lot of time. You will get the hang of it as to where you will need to make changes, in most cases it is the same kind of stuff that goes wrong. You will also find that VB.NET is a lot more forgiving than C#. When you work with a database and retrieve info, there will not be a conversion to string. And when you use this method you will sonn find out that you need to go through the code and add '.ToString()' when you collect info from a database. There are function in VB that have no counterpart in C# (if I am not mistaken Mid or MidStr is such a function). SharpDevelop will add some DLL so that you can still use these functions. As the majority of the applications already was in VB.Net I am not sure if there are many functions in VB6 that do not have a counterpart in VB.Net. I do not think it will be that m

                      1 Reply Last reply
                      0
                      • S Slow Eddie

                        I have been a firm believer in Rokford Lhotka's Business Objects....

                        T Offline
                        T Offline
                        tbim
                        wrote on last edited by
                        #38

                        Used Rocky's framework for years. Good stuff.

                        Mike

                        1 Reply Last reply
                        0
                        • N Nathan Minier

                          Resharper. And don't give it up, C# isn't terribly difficult. Like an English muffin, it just has many nooks and crannies, and is infinitely better with butter(Resharper). I would suggest a functional clone rather than direct conversion, though. It's unlikely that a VB6 program is structured in a way that will work well in C#.

                          "There are three kinds of lies: lies, damned lies and statistics." - Benjamin Disraeli

                          E Offline
                          E Offline
                          Eric Whitmore
                          wrote on last edited by
                          #39

                          Nathan Minier wrote:

                          Resharper.

                          :thumbsup:

                          Eric

                          1 Reply Last reply
                          0
                          • K kmoorevs

                            You clearly are looking to move to C#, but if you really want to shorten the learning curve, consider converting/rewriting to VB.NET. Once you get it to that point, there are tools that can convert to C#. Why VB.NET first? The learning curve is much shorter and at least some VB6 code will work without too much fuss. (beware of the whole int/short/long issues) If you want a direct conversion to VB.NET from VB6, I VB 2008 was the last IDE that had a migration tool.

                            "Go forth into the source" - Neal Morse

                            T Offline
                            T Offline
                            tbim
                            wrote on last edited by
                            #40

                            I understand your logic and agree to some point. But as someone who started in VB5, then moved to VB6, then moved to VB.Net (using your logic!!) and then finally to C#, I really wished I would have gone straight to C#. There's a good argument that VB6 and VB.Net are somewhat similar in syntax, but there are enough differences that you ARE learning a new language. So you might as well move to whichever language you actually want to learn. While using VB.Net, I used to wonder about all the people ranting about it. I understand the lazy variable declaration issue, but if you just set Option Explicit then you're good. However, now that I use C# I understand their viewpoint, although I don't fully share it. But I would choose C# hands-down over VB.Net. It's a much nicer and more concise/readable language. VB.Net is too "wordy". Just my opinion from my experience. Still, kmoorevs makes a good point.

                            Mike

                            B 1 Reply Last reply
                            0
                            • M Marc Greiner at home

                              You should look for a low code solution. I highly recommend DevExpress XAF. What is the budget for the project? C# with DevExpress XAF. With one low code solution in C#, you produce : - WinForms - Web (touch enabled) - multi-platform Mobile app with native look and feel. Your source code is mainly the description of your objects and their relations, where you add declarative validation and other goodies via attributes. Your application creates (or updates) the database automatically (including indexes, foreign keys, necessary n-n relation tables, etc.) and produces a beautiful default UI that you can fully customize, either in Visual Studio or at run-time. The learning curve is sharp, but well worth it. Everything is done by following best design patterns. See my answer to another similar question here, that includes links to tutorials and demos: Generic Multi Purpose .NET Layered Framework[^]

                              T Offline
                              T Offline
                              tbim
                              wrote on last edited by
                              #41

                              +1 for DevExpress. I didn't use their XAF, but I used all of their WinForms controls. They have great functionality, but were a bit "heavy" - meaning the program screens took a little bit longer to load than you would expect. Still, I wouldn't hesitate to use them again. I changed jobs, and they don't use DevExpress. I still have my five year old license though!

                              Mike

                              1 Reply Last reply
                              0
                              • M m0sa

                                LinqPAD - http://www.linqpad.net is totally worth it. It's very nice to play around with small snippets and run them immediately / compare them to other languages.

                                T Offline
                                T Offline
                                tbim
                                wrote on last edited by
                                #42

                                +1 million for LinqPAD. It is NOT just for LINQ. It is incredibly useful for writing and testing code snippets. You can create whole classes in it. And you can add references to your .Net assemblies and call their methods from within your LinqPAD code. I also use it for common queries, functions and maintenance tasks. You can use the free version, but you need to buy a license to get the syntax help. Totally worth it and it supports the developer. Great suggestion mOsa!

                                Mike

                                1 Reply Last reply
                                0
                                • S Slow Eddie

                                  I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                                  If everything seems to be going well you are obviously overlooking someone or something....

                                  C Offline
                                  C Offline
                                  ClockMeister
                                  wrote on last edited by
                                  #43

                                  I converted a major software component (a very complex one) from VB6 to VB.Net some years ago. Converting to C# would not be that much more difficult. However, having said that, it would be a surprise to me that there were really any tools that would make the conversion much easier. The environments (COM vs. .Net) are different. There are similarities but a fair amount of the work is, simply, going to have to be manually done. The basic logic can remain the same but the fact that .Net implements first class object orientation where VB doesn't is going to make you want to optimize as you convert. I don't mean to be the bearer of bad news or anything but unless someone has developed some "magic bullet" software (which I doubt) you're just going to have to tough it out. -CM

                                  If you think hiring a professional is expensive, wait until you hire an amateur! - Red Adair

                                  1 Reply Last reply
                                  0
                                  • S Slow Eddie

                                    Thanks, I will check it out. And yes I am actually re-writing a functional clone as you suggest. Sorry I did not make that clearer. The Program is around 400,000 lines of code. :omg:

                                    M Offline
                                    M Offline
                                    Mr Rezaei
                                    wrote on last edited by
                                    #44

                                    You Can Use .NET De-compiling Tools Like RedGate .NET Reflector For Simply Read Your Assembly And Translate It To Different Versions Of C#, VB.NET Or C++.NET. I Use That Tool To Read My Students Codes And Learn Some Of Tricks They Use... :suss:

                                    1 Reply Last reply
                                    0
                                    • R RedDk

                                      You need one of these: http://com-sub.info/Mad/Welcome And a few tabs of Anacin.

                                      T Offline
                                      T Offline
                                      ThePhoenyx
                                      wrote on last edited by
                                      #45

                                      A few tabs, yes. Tabs of what may vary. :cool:

                                      1 Reply Last reply
                                      0
                                      • S Slow Eddie

                                        I am trying to convert my VB6 code to C# (Desktop programs). I am looking for tools that will help increase my efficiency and shorten the learning curve. Any suggestions? Other than "give it up!" :laugh:

                                        If everything seems to be going well you are obviously overlooking someone or something....

                                        T Offline
                                        T Offline
                                        Thornik
                                        wrote on last edited by
                                        #46

                                        What you try to do - LEARN or CONVERT???????

                                        S 1 Reply Last reply
                                        0
                                        • T Thornik

                                          What you try to do - LEARN or CONVERT???????

                                          S Offline
                                          S Offline
                                          Slow Eddie
                                          wrote on last edited by
                                          #47

                                          BOTH! They are not mutually exclusive.:cool:

                                          It is far better to kill 2 birds with one stone that one bird with 2 stones.

                                          T 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