porting from C++Builder

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • =?Utf-8?B?ZW1hdmlzdQ==?=

    porting from C++Builder

    Dear guys,
    I'm in trouble having to port my project from C++Builder6 to VisualC++.
    Has anyone of you idea if there are any tools to help my doing this job?
    My current project is widely using VCL and these 2 IDE (C++Builder and
    VisualC++) seems to be so far each other that I can hardly think to find out
    a tool to "automatica lly" perform something for me.
    Thank you.

  • David Wilkinson

    #2
    Re: porting from C++Builder

    emavisu wrote:
    Dear guys,
    I'm in trouble having to port my project from C++Builder6 to VisualC++.
    Has anyone of you idea if there are any tools to help my doing this job?
    My current project is widely using VCL and these 2 IDE (C++Builder and
    VisualC++) seems to be so far each other that I can hardly think to find out
    a tool to "automatica lly" perform something for me.
    Thank you.
    >
    emavisu:

    Visual C++ is a compiler, not a GUI framework. It is actually a compiler for
    three languages: C, C++ and C++/CLI.

    If you want to create a GUI program using Visual C++ you have to decide whether
    you want a plain Win32 application (using C or C++), MFC application (using
    native C++) or a .NET application (using C++/CLI).

    The porting issues will be completely different in these three cases. But in
    each case, before you start, you should try to separate the core functionality
    of your C++Builder6 applications from the GUI part. This core functionality can
    then be used in Visual C++.

    [If you want to go the .NET route, you might consider whether you want to write
    the GUI part of your application in C#, or even rewrite everything in C#.]

    --
    David Wilkinson
    Visual C++ MVP

    Comment

    • RFOG

      #3
      Re: porting from C++Builder

      On Wed, 08 Oct 2008 15:39:01 +0200, emavisu
      <emavisu@discus sions.microsoft .comwrote:
      Dear guys,
      I'm in trouble having to port my project from C++Builder6 to VisualC++.
      Has anyone of you idea if there are any tools to help my doing this job?
      My current project is widely using VCL and these 2 IDE (C++Builder and
      VisualC++) seems to be so far each other that I can hardly think to find
      out
      a tool to "automatica lly" perform something for me.
      Thank you.
      >
      C++Builder (and Delphi) VCL is not compatible with MFC/.NET in any way.
      The only thing to do is continue with Builder or do David Wilkinson has
      answered you.

      VCL model is near to .NET Windows Forms model (Same person did it), but
      completelly incompatible because VCL is built in Pascal and .NET is built
      in... er... C# and names and some concepts are different. Then passing
      from VCL to .NET is significant easier than pass to MFC (or other C++
      framework), but you will find a lot of things that does not work as
      expected in .NET that worked in VCL. Plus Windows Forms designer is er..
      "easy to crash" and you need to do very bad and uncommon things to crash
      VCL form designer.

      Both VCL and .NET have the concepts of Event Driven User interface,
      passing sender object and event cause to events but all common things
      stops here. Concepts are the same, but names are very different.

      However you have VCL.NET, an Pascal VCL extensions to use Pascal and VCL
      in .NET, but there are none similar in C++ Borland side like Microsoft
      C++/CLI.


      --
      Microsoft Visual C++ MVP
      =============== =========
      Mi blog sobre programación: http://geeks.ms/blogs/rfog
      Momentos Leves: http://momentosleves.blogspot.com/
      Cosas mías: http://rfog.blogsome.com/
      Libros, ciencia ficción y programación
      =============== =============== ==========
      La causa de la mujer es la del hombre; los dos se levantan o sucumben
      juntos.
      -- Alfred Tennyson. (1809-1892) Poeta británico.

      Comment

      • =?Utf-8?B?ZW1hdmlzdQ==?=

        #4
        Re: porting from C++Builder

        THank you for considering my question. I know these possibilities and for
        sure I want to use .NET framework. Do you think it is better to use VisualC#?
        In this way I cannot reuse my C++ classes. Which can be the benefits instead?

        Thanks.
        emavisu

        "David Wilkinson" wrote:
        emavisu wrote:
        Dear guys,
        I'm in trouble having to port my project from C++Builder6 to VisualC++.
        Has anyone of you idea if there are any tools to help my doing this job?
        My current project is widely using VCL and these 2 IDE (C++Builder and
        VisualC++) seems to be so far each other that I can hardly think to find out
        a tool to "automatica lly" perform something for me.
        Thank you.
        >
        emavisu:
        >
        Visual C++ is a compiler, not a GUI framework. It is actually a compiler for
        three languages: C, C++ and C++/CLI.
        >
        If you want to create a GUI program using Visual C++ you have to decide whether
        you want a plain Win32 application (using C or C++), MFC application (using
        native C++) or a .NET application (using C++/CLI).
        >
        The porting issues will be completely different in these three cases. But in
        each case, before you start, you should try to separate the core functionality
        of your C++Builder6 applications from the GUI part. This core functionality can
        then be used in Visual C++.
        >
        [If you want to go the .NET route, you might consider whether you want to write
        the GUI part of your application in C#, or even rewrite everything in C#.]
        >
        --
        David Wilkinson
        Visual C++ MVP
        >

        Comment

        • David Wilkinson

          #5
          Re: porting from C++Builder

          emavisu wrote:
          THank you for considering my question. I know these possibilities and for
          sure I want to use .NET framework. Do you think it is better to use VisualC#?
          In this way I cannot reuse my C++ classes. Which can be the benefits instead?
          emasivu:

          You should be aware that Microsoft is no longer promoting C++/CLI as a language
          for .NET GUI applications, just for interfacing to native C++ code. C# is really
          recommended for GUI code. You can use it for GUI code, but you may regret it.

          You do have legacy C++ code, but it contains VCL code that cannot be used in
          Visual C_++. Two possibilities:

          1. A complete rewrite in C#

          2. Use C++/CLI to wrap your (cleaned) C+ code into C++/CLI classes which can be
          consumed by a C# GUI.

          --
          David Wilkinson
          Visual C++ MVP

          Comment

          • =?Utf-8?B?ZW1hdmlzdQ==?=

            #6
            Re: porting from C++Builder

            Dear Mr. Wilkinson,
            you are confirming my feeling that MS is, as usual, pushing developers in
            the direction of working in a complete proprietary solution!

            Frankly speaking I think C++Builder and VCL are great tool to work with but
            the problem is that you can hardly find people using it (mainly in italy,
            whare I live). In this situation, when you need something is nearly
            impossible to find out a forum like this one where to chat with someone about
            the possible solution for the problem you are facing.
            I think this is the main reason why I'm thinking about this migration.

            Which is your personal point of view? It seems you are a very experienced
            person so your suggestion would be really worthwhile.

            Thanks so much.

            emavisu


            "David Wilkinson" wrote:
            emavisu wrote:
            THank you for considering my question. I know these possibilities and for
            sure I want to use .NET framework. Do you think it is better to use VisualC#?
            In this way I cannot reuse my C++ classes. Which can be the benefits instead?
            >
            emasivu:
            >
            You should be aware that Microsoft is no longer promoting C++/CLI as a language
            for .NET GUI applications, just for interfacing to native C++ code. C# is really
            recommended for GUI code. You can use it for GUI code, but you may regret it.
            >
            You do have legacy C++ code, but it contains VCL code that cannot be used in
            Visual C_++. Two possibilities:
            >
            1. A complete rewrite in C#
            >
            2. Use C++/CLI to wrap your (cleaned) C+ code into C++/CLI classes which can be
            consumed by a C# GUI.
            >
            --
            David Wilkinson
            Visual C++ MVP
            >

            Comment

            • David Wilkinson

              #7
              Re: porting from C++Builder

              emavisu wrote:
              Dear Mr. Wilkinson,
              you are confirming my feeling that MS is, as usual, pushing developers in
              the direction of working in a complete proprietary solution!
              >
              Frankly speaking I think C++Builder and VCL are great tool to work with but
              the problem is that you can hardly find people using it (mainly in italy,
              whare I live). In this situation, when you need something is nearly
              impossible to find out a forum like this one where to chat with someone about
              the possible solution for the problem you are facing.
              I think this is the main reason why I'm thinking about this migration.
              >
              Which is your personal point of view? It seems you are a very experienced
              person so your suggestion would be really worthwhile.
              emavisu:

              My personal decision is to stick with MFC, but I have 10 years invested in
              learning it. Also, after 10 years of neglect. Microsoft is once again investing
              resources in it, because they have accepted that this is what the majority of
              their existing C++ customer base wants.

              Of course MFC is also a proprietary Microsoft solution. If you are interested,
              there are other native C++ libraries (QT, wxwidgets, WTL ...) that are not
              controlled by Microsoft.

              --
              David Wilkinson
              Visual C++ MVP

              Comment

              • =?Utf-8?B?ZW1hdmlzdQ==?=

                #8
                Re: porting from C++Builder

                I also would like to stick with VCL but the problem is to know if Embarcadero
                and CodeGear want to keep a good support to this product or not! from the
                other side (MS) I would need a good library with a full support for Unicode
                (for Chinese GUI) but as far as I know I see that MFC is not enough (they
                told me I have to use .NET).
                Also I would like to keep using C++ (I also invested a lot of time on this
                language) but I do not know if using one of the others libraries/frameworks
                you are talking about (QT, wxwidgets, WTL ...) would be a good choice for the
                future of my applications.

                "David Wilkinson" wrote:
                emavisu wrote:
                Dear Mr. Wilkinson,
                you are confirming my feeling that MS is, as usual, pushing developers in
                the direction of working in a complete proprietary solution!

                Frankly speaking I think C++Builder and VCL are great tool to work with but
                the problem is that you can hardly find people using it (mainly in italy,
                whare I live). In this situation, when you need something is nearly
                impossible to find out a forum like this one where to chat with someone about
                the possible solution for the problem you are facing.
                I think this is the main reason why I'm thinking about this migration.

                Which is your personal point of view? It seems you are a very experienced
                person so your suggestion would be really worthwhile.
                >
                emavisu:
                >
                My personal decision is to stick with MFC, but I have 10 years invested in
                learning it. Also, after 10 years of neglect. Microsoft is once again investing
                resources in it, because they have accepted that this is what the majority of
                their existing C++ customer base wants.
                >
                Of course MFC is also a proprietary Microsoft solution. If you are interested,
                there are other native C++ libraries (QT, wxwidgets, WTL ...) that are not
                controlled by Microsoft.
                >
                --
                David Wilkinson
                Visual C++ MVP
                >

                Comment

                • David Wilkinson

                  #9
                  Re: porting from C++Builder

                  emavisu wrote:
                  I also would like to stick with VCL but the problem is to know if Embarcadero
                  and CodeGear want to keep a good support to this product or not! from the
                  other side (MS) I would need a good library with a full support for Unicode
                  (for Chinese GUI) but as far as I know I see that MFC is not enough (they
                  told me I have to use .NET).
                  Also I would like to keep using C++ (I also invested a lot of time on this
                  language) but I do not know if using one of the others libraries/frameworks
                  you are talking about (QT, wxwidgets, WTL ...) would be a good choice for the
                  future of my applications.
                  emavisu:

                  MFC has full support for Unicode. In fact, a default MFC application created in
                  VS2005 or VS2008 uses Unicode characters by default.

                  Who told you otherwise?

                  While nothing is certain, I also think that the future of MFC is much better
                  assured than QT, wxwidgets, WTL or VCL.

                  The downside of MFC is that it is old, bloated, and not very elegant. It also
                  has quite a learning curve. But it works, and there is a ton of code samples
                  available for it.

                  --
                  David Wilkinson
                  Visual C++ MVP

                  Comment

                  • =?Utf-8?B?ZW1hdmlzdQ==?=

                    #10
                    Re: porting from C++Builder

                    Well I think I will test MFC solution for a while...but my learning curve
                    MUST be very short so, for sure, I will need to hire good people if I will
                    decide to go on in this direction: do you know a place to find some of them?

                    Thanks very much for your time.

                    emavisu


                    "David Wilkinson" wrote:
                    emavisu wrote:
                    I also would like to stick with VCL but the problem is to know if Embarcadero
                    and CodeGear want to keep a good support to this product or not! from the
                    other side (MS) I would need a good library with a full support for Unicode
                    (for Chinese GUI) but as far as I know I see that MFC is not enough (they
                    told me I have to use .NET).
                    Also I would like to keep using C++ (I also invested a lot of time on this
                    language) but I do not know if using one of the others libraries/frameworks
                    you are talking about (QT, wxwidgets, WTL ...) would be a good choice for the
                    future of my applications.
                    >
                    emavisu:
                    >
                    MFC has full support for Unicode. In fact, a default MFC application created in
                    VS2005 or VS2008 uses Unicode characters by default.
                    >
                    Who told you otherwise?
                    >
                    While nothing is certain, I also think that the future of MFC is much better
                    assured than QT, wxwidgets, WTL or VCL.
                    >
                    The downside of MFC is that it is old, bloated, and not very elegant. It also
                    has quite a learning curve. But it works, and there is a ton of code samples
                    available for it.
                    >
                    --
                    David Wilkinson
                    Visual C++ MVP
                    >

                    Comment

                    • Jonathan Wilson

                      #11
                      Re: porting from C++Builder

                      needs them, which is probably not true of MFC, VCL, or Qt which will
                      only be around for as long as Microsoft, Embarcadero (aka CodeGear,
                      formerly part of Borland), and Nokia choose to keep them going -- I
                      imagine that will be quite a long time, though.
                      Actually, QT is available under the GPL as well as under a proprietary
                      license. If Nokia/trolltech folded or stopped developing it, the community
                      would just keep using the GPL version. (at least those releasing open
                      source software that is)

                      Comment

                      • =?Utf-8?B?RGFuaWVs?=

                        #12
                        Re: porting from C++Builder

                        You should be aware that Microsoft is no longer promoting C++/CLI as a
                        language
                        for .NET GUI applications, just for interfacing to native C++ code. C# is really
                        recommended for GUI code. You can use it for GUI code, but you may regret it.
                        we noticed this :-) LOL

                        Comment

                        • =?Utf-8?B?RGFuaWVs?=

                          #13
                          Re: porting from C++Builder

                          well, why don't you download the free trial of C++Builder 2009 and see for
                          yourself (also ask for their companion/partner cd)


                          "emavisu" wrote:
                          I also would like to stick with VCL but the problem is to know if Embarcadero
                          and CodeGear want to keep a good support to this product or not! from the
                          other side (MS) I would need a good library with a full support for Unicode
                          (for Chinese GUI) but as far as I know I see that MFC is not enough (they
                          told me I have to use .NET).
                          Also I would like to keep using C++ (I also invested a lot of time on this
                          language) but I do not know if using one of the others libraries/frameworks
                          you are talking about (QT, wxwidgets, WTL ...) would be a good choice for the
                          future of my applications.
                          >
                          "David Wilkinson" wrote:
                          >
                          emavisu wrote:
                          Dear Mr. Wilkinson,
                          you are confirming my feeling that MS is, as usual, pushing developers in
                          the direction of working in a complete proprietary solution!
                          >
                          Frankly speaking I think C++Builder and VCL are great tool to work with but
                          the problem is that you can hardly find people using it (mainly in italy,
                          whare I live). In this situation, when you need something is nearly
                          impossible to find out a forum like this one where to chat with someone about
                          the possible solution for the problem you are facing.
                          I think this is the main reason why I'm thinking about this migration.
                          >
                          Which is your personal point of view? It seems you are a very experienced
                          person so your suggestion would be really worthwhile.
                          emavisu:

                          My personal decision is to stick with MFC, but I have 10 years invested in
                          learning it. Also, after 10 years of neglect. Microsoft is once again investing
                          resources in it, because they have accepted that this is what the majority of
                          their existing C++ customer base wants.

                          Of course MFC is also a proprietary Microsoft solution. If you are interested,
                          there are other native C++ libraries (QT, wxwidgets, WTL ...) that are not
                          controlled by Microsoft.

                          --
                          David Wilkinson
                          Visual C++ MVP

                          Comment

                          • =?Utf-8?B?RGFuaWVs?=

                            #14
                            Re: porting from C++Builder

                            unicode... right!
                            so is the new VCL (for both delphi and bcb 2009!)

                            "David Wilkinson" wrote:
                            emavisu wrote:
                            I also would like to stick with VCL but the problem is to know if Embarcadero
                            and CodeGear want to keep a good support to this product or not! from the
                            other side (MS) I would need a good library with a full support for Unicode
                            (for Chinese GUI) but as far as I know I see that MFC is not enough (they
                            told me I have to use .NET).
                            Also I would like to keep using C++ (I also invested a lot of time on this
                            language) but I do not know if using one of the others libraries/frameworks
                            you are talking about (QT, wxwidgets, WTL ...) would be a good choice for the
                            future of my applications.
                            >
                            emavisu:
                            >
                            MFC has full support for Unicode. In fact, a default MFC application created in
                            VS2005 or VS2008 uses Unicode characters by default.
                            >
                            Who told you otherwise?
                            >
                            While nothing is certain, I also think that the future of MFC is much better
                            assured than QT, wxwidgets, WTL or VCL.
                            >
                            The downside of MFC is that it is old, bloated, and not very elegant. It also
                            has quite a learning curve. But it works, and there is a ton of code samples
                            available for it.
                            >
                            --
                            David Wilkinson
                            Visual C++ MVP
                            >

                            Comment

                            • =?Utf-8?B?RGFuaWVs?=

                              #15
                              Re: porting from C++Builder

                              qt is super expnsive! that's a fact the getlemen from nokia (current owner of
                              qt) don't seam to quite follow (it doesn't fit in their power point
                              presentations.. .)

                              both wxWidgets and VCL currently are maintained FULL SPEE AHEAD and they
                              have full support for UNICODE. the problem with wxWidgets (i was to say
                              wxWindows) is that in terms of database development (especially dbaware
                              controls) they are like 15 years in the past... and they don't seam to
                              undestand that where people cannot build vertical database client
                              applications, well, there is a problem right there! (don't need to be a
                              genius to agree) - it's not that we're all buiding compilers, debuggers,
                              frameworks, kernel stuff... :-)

                              "Jonathan Wilson" wrote:
                              needs them, which is probably not true of MFC, VCL, or Qt which will
                              only be around for as long as Microsoft, Embarcadero (aka CodeGear,
                              formerly part of Borland), and Nokia choose to keep them going -- I
                              imagine that will be quite a long time, though.
                              Actually, QT is available under the GPL as well as under a proprietary
                              license. If Nokia/trolltech folded or stopped developing it, the community
                              would just keep using the GPL version. (at least those releasing open
                              source software that is)
                              >
                              >

                              Comment

                              Working...