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. Back to the basics: win32 programming

Back to the basics: win32 programming

Scheduled Pinned Locked Moved The Lounge
csharpc++questiondotnetcom
30 Posts 18 Posters 0 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.
  • G generic_user_id

    Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

    J Offline
    J Offline
    Jeremy Falcon
    wrote on last edited by
    #2

    Despite what some Microsofties might say, I still think Win32 programming has its place in the world. But, that's mainly for lower level things or if you're just curious. As far as your average business, data driven development goes .NET is where it's at. But, knowing Win32 has its advantages - it's faster. And, it'll also help even further your understanding of the way Windows works and complement a .NET education. So, I'd say learn both if you're looking for a solid education. Also, I'd personally recommend the book "Win32 Programming" because I've read it and it's packed with a lot of good info. However, I heard the Charles Pretzold book was good as well, but since I've never read that one I can't say much about it. Jeremy Falcon

    1 Reply Last reply
    0
    • G generic_user_id

      Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

      J Offline
      J Offline
      Jorgen Sigvardsson
      wrote on last edited by
      #3

      Learn both. Knowledge yields power. :) -- Weiter, weiter, ins verderben. Wir müssen leben bis wir sterben. Are you bright too?[^]

      1 Reply Last reply
      0
      • G generic_user_id

        Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

        A Offline
        A Offline
        Alex Korchemniy
        wrote on last edited by
        #4

        Some people mentioned that you can learn both Win32 and C#. I agree, but I suggest that you focus on C# more because it is the way things are heading. C# does have a lot of benefits... - faster developement (by far faster) --> saves money - managed code (obviously don't have to worry as much about mem) - a lot cleaner (compared to all those macros in c++) - easier to learn - widespread and supported this is just the begining im sure people can list a ton more.

        1 Reply Last reply
        0
        • G generic_user_id

          Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

          G Offline
          G Offline
          Graham Bradshaw
          wrote on last edited by
          #5

          I think a lot of it depends on who your target audience is. For "in-house" development, .NET would probably be the way to go, but without an understanding of the fundamentals of Windows programming using "classic" Win32, I think you will struggle. If you are developing commercial software for sale, it has to be Win32 all the way. While I'm sure there is some, I have yet to come across any mass-market, shrink-wrap software that uses .NET.

          C realJSOPR J 3 Replies Last reply
          0
          • G Graham Bradshaw

            I think a lot of it depends on who your target audience is. For "in-house" development, .NET would probably be the way to go, but without an understanding of the fundamentals of Windows programming using "classic" Win32, I think you will struggle. If you are developing commercial software for sale, it has to be Win32 all the way. While I'm sure there is some, I have yet to come across any mass-market, shrink-wrap software that uses .NET.

            C Offline
            C Offline
            Christian Graus
            wrote on last edited by
            #6

            That's only because of how long it takes to develop. Christian I have several lifelong friends that are New Yorkers but I have always gravitated toward the weirdo's. - Richard Stringer

            1 Reply Last reply
            0
            • G generic_user_id

              Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

              C Offline
              C Offline
              Christian Graus
              wrote on last edited by
              #7

              Personally, I'd advocate Win32 only for personal interest unless you have work in that area. I would be stunned if any new projects are Win32, as opposed to MFC. Learn C#, no matter what. The more you learn, the better off you are, and there's lots of work in this area, as you'd expect. Christian I have several lifelong friends that are New Yorkers but I have always gravitated toward the weirdo's. - Richard Stringer

              S 1 Reply Last reply
              0
              • G generic_user_id

                Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

                H Offline
                H Offline
                Hans Dietrich
                wrote on last edited by
                #8

                To me this is not really an either/or decision. Even though none of the Microsoft diagrams of .Net show it this way, the fact is that .Net, MFC, ATL, and every other framework is based on the Win32 API. So learning Win32 - as well as .Net - will help you in the long run. Don't forget that even in .Net, you can still call Win32 APIs directly.

                1 Reply Last reply
                0
                • G generic_user_id

                  Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

                  M Offline
                  M Offline
                  Member 96
                  wrote on last edited by
                  #9

                  Well you didn't say if it was a hobby or not, if it's a hobby do what you please, if you plan to feed a family for the forseable future, go directly to .net. Much of Win32 is UI related for obvious reasons and Microsoft seems lately to be hell bent on making that UI code obsolete. If this was 1988 I would recommend Win32, but I couldn't in any honesty give you one good reason to learn it now, it's starting to get pretty stale. If you want a career maintaining someone else's code that was written circa 1990 to 2002 for the rest of your life by all means learn win32, no responsible company is going to use it to write anything beyond drivers in short order. In fact even ATI now requires .net to install their latest video drivers (for the utility programs). Your not going to get and easy answer to this question here, there is a huge bias for win32 and a huge bias against .net (or at least there has been up to a few months ago) so don't expect a truly "agnostic" answer. You will likely also get a lot of people who will advocate that you should learn win32 because it's "Important" to know that kind of thing even if you are programming in a higher level language. That argument has always been utter hogwash, if you have the time and are curious fine, if you want to make a living stick to knowing what you need to know first, a professional programmer can make an excellent living (and write professional grade code) knowing absolutely nothing about win32 internals. If it's for work then you might want to take a look at the jobs being offered that you might be going after some day and see what they require. In all honesty, the last time I looked I think there were far more Java jobs than anything else on offer for corporate work, but that might have changed lately.

                  realJSOPR G 2 Replies Last reply
                  0
                  • G generic_user_id

                    Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

                    M Offline
                    M Offline
                    Matt Gerrans
                    wrote on last edited by
                    #10

                    I have found it worthwhile to know the Windows API and to be able to write small windows apps "from scratch" in my work. In addition to working on larger sofftware applications, I've done lots of contract work, where I developed many utility programs that do process-orientied things, or tweaks of Windows (like moving the icons on the desktop, for example). When writing a little utility that runs in the background, it is particularly nice to write it in C++, without MFC (which I've never liked -- Borland C++ Builder is far better for visual apps, bare bones API is better for console, or "demon" apps) and be able to tune it to use 0% CPU and just a modicum of memory. Although, I imagine I would find it much harder to learn the bare bones API if I were starting out these days, when there are such temptations as C# around. When the API was the only game in town, it was painful, but necessary to learn it, today, it will require a sustained and adamant force of will on your part. Good luck! Matt Gerrans

                    1 Reply Last reply
                    0
                    • G generic_user_id

                      Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

                      P Offline
                      P Offline
                      peterchen
                      wrote on last edited by
                      #11

                      If it's for desktop applications, there's one point speaking for Win32 API: WinForms doesn't seem to be made to stay, and the last information I remember is that Avalon will be WinXP and above only. Only time will tell which gets the bigger bite. [edit]On general, I agree with others, if you have the power, learn both


                      we are here to help each other get through this thing, whatever it is Vonnegut jr.
                      boost your code || Fold With Us! || sighist | doxygen

                      1 Reply Last reply
                      0
                      • G generic_user_id

                        Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

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

                        Even though .net will/has superceeded MFC, it's the underlying workings you need to know -COM/Win32/Win64. It would be a benefit to learn at least some of the Platform SDK sections e.g. I/O, Windows etc. Also learning some basic COM principles these will help when intergrating with COM objects outside of .net (regardless of what people - COM is not dead).

                        1 Reply Last reply
                        0
                        • G generic_user_id

                          Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

                          R Offline
                          R Offline
                          Rocky Moore
                          wrote on last edited by
                          #13

                          If you know MFC and have been working in it for "Some time" (assuming that is not just the weekend), then WIN32 should be no biggy. That said, it probably still is not worth the time to bother unless required. Spend the time either writing code that will remain worth while or go out and enjoy some time away from the computer. You can always learn WIN32 if you should need to, but you probably will not find the need. The .NET frameworks has already taken over and will continue to do so. Everything else is fast becoming legacy and there is more value in staying current than learning legacy stuff. One thing to note, is .NET is not a language, it is a framework or more or less a platform. You can still make Win32 calls if you ever feel in the mood and you can still work in C++ if you find you need to waste all that time typing and debugging code. It is not out to replace C++, it is just that many of us old time C++ people found that we can bend a little and reap huge levels of productivity, which is much more valuable to us than tracking down a null pointer or a mismatched DLL signature ;) Rocky <>< www.HintsAndTips.com - Now with "Recommendation" postings www.JokesTricksAndStuff.com www.MyQuickPoll.com - Now with Recent Poll List www.GotTheAnswerToSpam.com - Again :)

                          J 1 Reply Last reply
                          0
                          • G Graham Bradshaw

                            I think a lot of it depends on who your target audience is. For "in-house" development, .NET would probably be the way to go, but without an understanding of the fundamentals of Windows programming using "classic" Win32, I think you will struggle. If you are developing commercial software for sale, it has to be Win32 all the way. While I'm sure there is some, I have yet to come across any mass-market, shrink-wrap software that uses .NET.

                            realJSOPR Offline
                            realJSOPR Offline
                            realJSOP
                            wrote on last edited by
                            #14

                            The first commercially available thing I've seen written in .NET is an optional part of ATI's driver package. Other than that, I don't know of anything. Someone said earlier that you want to use Win32/C++ when speed (of execution) is an issue. I've always thought speed was an issue - when did it become less important than anything else? ------- sig starts "I've heard some drivers saying, 'We're going too fast here...'. If you're not here to race, go the hell home - don't come here and grumble about going too fast. Why don't you tie a kerosene rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001

                            1 Reply Last reply
                            0
                            • M Member 96

                              Well you didn't say if it was a hobby or not, if it's a hobby do what you please, if you plan to feed a family for the forseable future, go directly to .net. Much of Win32 is UI related for obvious reasons and Microsoft seems lately to be hell bent on making that UI code obsolete. If this was 1988 I would recommend Win32, but I couldn't in any honesty give you one good reason to learn it now, it's starting to get pretty stale. If you want a career maintaining someone else's code that was written circa 1990 to 2002 for the rest of your life by all means learn win32, no responsible company is going to use it to write anything beyond drivers in short order. In fact even ATI now requires .net to install their latest video drivers (for the utility programs). Your not going to get and easy answer to this question here, there is a huge bias for win32 and a huge bias against .net (or at least there has been up to a few months ago) so don't expect a truly "agnostic" answer. You will likely also get a lot of people who will advocate that you should learn win32 because it's "Important" to know that kind of thing even if you are programming in a higher level language. That argument has always been utter hogwash, if you have the time and are curious fine, if you want to make a living stick to knowing what you need to know first, a professional programmer can make an excellent living (and write professional grade code) knowing absolutely nothing about win32 internals. If it's for work then you might want to take a look at the jobs being offered that you might be going after some day and see what they require. In all honesty, the last time I looked I think there were far more Java jobs than anything else on offer for corporate work, but that might have changed lately.

                              realJSOPR Offline
                              realJSOPR Offline
                              realJSOP
                              wrote on last edited by
                              #15

                              In San Antonio, there were VERY FEW jobs available for anything other than DBAs. Of the jobs that weren't DBA, most were for C++ with a smattering of Java, and nothing for .NET. That was in May/June of 2004. My current job requires C++ with heavy MFC knowledge. They're still debating whether or not they'll even move to VC7, and there has been absolutely no discussion of going to managed code, C#, or .NET. ------- sig starts "I've heard some drivers saying, 'We're going too fast here...'. If you're not here to race, go the hell home - don't come here and grumble about going too fast. Why don't you tie a kerosene rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001

                              A 1 Reply Last reply
                              0
                              • G generic_user_id

                                Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

                                H Offline
                                H Offline
                                Henry miller
                                wrote on last edited by
                                #16

                                First and foremost: what does you boss want? When the boss (which might mean chief engineer) says you are using something, then the first priority is learning that. If the boss says .net (and many do for good reason when win32/mfc is the alternative) then you do .net. If the boss says win32/mfc, and then you do that. If you are looking for a job, well .net is where all new development for MS windows is going. However it will take years to get there, if it ever does. I know people who have made carrers out of learning last years technology and supporting all those old systems after everyone else moved to the latest fad. Make a choice, based on what you want to do. More knowledge is never bad. Okay, now that professional considerations are out of the way, it is time to consider fun. Learn qt. Even though it does some really strange things to C++, I still like qt, it is well designed, and easy to use. Development is fun and (fairly) quick with qt. And if you do it right your programs are easially portable to Unix and Macs. There is also wxWidgets, TK, and GTK. Not to mention hundreds of lesser known toolkits. It is a personal choice, so I won't fault you for liking any of them. Remember, these are all just APIs. Once you know how to program you can pick up any as you need it. I may take years to know off the top of your head which option does some strange feature, but a good programer can quickly understand the basics enough to be productive.

                                1 Reply Last reply
                                0
                                • C Christian Graus

                                  Personally, I'd advocate Win32 only for personal interest unless you have work in that area. I would be stunned if any new projects are Win32, as opposed to MFC. Learn C#, no matter what. The more you learn, the better off you are, and there's lots of work in this area, as you'd expect. Christian I have several lifelong friends that are New Yorkers but I have always gravitated toward the weirdo's. - Richard Stringer

                                  S Offline
                                  S Offline
                                  Stuart van Weele
                                  wrote on last edited by
                                  #17

                                  Just wrote a small service to monitor a serial port, analyze the results, and send status out via UDP using Win32. I selected Win32 for its advantages in size and speed.

                                  C 1 Reply Last reply
                                  0
                                  • R Rocky Moore

                                    If you know MFC and have been working in it for "Some time" (assuming that is not just the weekend), then WIN32 should be no biggy. That said, it probably still is not worth the time to bother unless required. Spend the time either writing code that will remain worth while or go out and enjoy some time away from the computer. You can always learn WIN32 if you should need to, but you probably will not find the need. The .NET frameworks has already taken over and will continue to do so. Everything else is fast becoming legacy and there is more value in staying current than learning legacy stuff. One thing to note, is .NET is not a language, it is a framework or more or less a platform. You can still make Win32 calls if you ever feel in the mood and you can still work in C++ if you find you need to waste all that time typing and debugging code. It is not out to replace C++, it is just that many of us old time C++ people found that we can bend a little and reap huge levels of productivity, which is much more valuable to us than tracking down a null pointer or a mismatched DLL signature ;) Rocky <>< www.HintsAndTips.com - Now with "Recommendation" postings www.JokesTricksAndStuff.com www.MyQuickPoll.com - Now with Recent Poll List www.GotTheAnswerToSpam.com - Again :)

                                    J Offline
                                    J Offline
                                    Jeremy Falcon
                                    wrote on last edited by
                                    #18

                                    It is not out to replace C++, it is just that many of us old time C++ people found that we can bend a little and reap huge levels of productivity Interesting, VB programmers have been saying that for over a decade. But, C++ programmers still insulted them regardless. But, now it's ok because C# has the letter "C" in it right? Jeremy Falcon

                                    J R 2 Replies Last reply
                                    0
                                    • G generic_user_id

                                      Greetings cpians! I'm currently facing the following dilemma: should I learn the Win32 API in depth, or is it not worth it anymore with .NET having arrived? I've programmed with MFC for some time, but because I started programming MFC without building anything even remotely complex with only the win32 api I never really learned how things worked on the API level. I'm thinking about getting either Win32 Programming (Joseph M. Newcomer, Brent E. Rector)[^] or Programming Windows 5th (Petzold)[^].Which book should I get? Alternatively, I could focus my effords on C# and the .NET framework as a whole. Although I think that .NET is neat, I don't think it's likely .NET languages will replace c++ altogether, therefore knowing win32 is probably useful in the long term as well. So, what to do? Cordially, Diederik P.s: For those who do consider this a programming question (even though it ain't) I'll save you the bother of looking up the link. It's here[^].

                                      S Offline
                                      S Offline
                                      Stuart van Weele
                                      wrote on last edited by
                                      #19

                                      I would learn enough of Win32 to understand how Windows creates and destroys things, and how messages are passed around the system. If you understand than then understanding everything else built on top of it becomes much easier.

                                      1 Reply Last reply
                                      0
                                      • G Graham Bradshaw

                                        I think a lot of it depends on who your target audience is. For "in-house" development, .NET would probably be the way to go, but without an understanding of the fundamentals of Windows programming using "classic" Win32, I think you will struggle. If you are developing commercial software for sale, it has to be Win32 all the way. While I'm sure there is some, I have yet to come across any mass-market, shrink-wrap software that uses .NET.

                                        J Offline
                                        J Offline
                                        Judah Gabriel Himango
                                        wrote on last edited by
                                        #20

                                        PrintShop 20 Deluxe PringShop 20 Professional Publisher Windows Media Center Edition Logitec Digital Pen Some Quicken distros SourceGear Vault Matrox PowerDesk Symantec DriveImage 7.0 Symantec V2i Protector Autocad 2005 (although I haven't confirmed this one) GoalCentrix LlamaGraphics Just to name a few. I also heard that ATI used .NET in part of their driver package, but I haven't confirmed that.

                                        Any remotely useful information on my blog will be removed immediately. Judah Himango

                                        1 Reply Last reply
                                        0
                                        • realJSOPR realJSOP

                                          In San Antonio, there were VERY FEW jobs available for anything other than DBAs. Of the jobs that weren't DBA, most were for C++ with a smattering of Java, and nothing for .NET. That was in May/June of 2004. My current job requires C++ with heavy MFC knowledge. They're still debating whether or not they'll even move to VC7, and there has been absolutely no discussion of going to managed code, C#, or .NET. ------- sig starts "I've heard some drivers saying, 'We're going too fast here...'. If you're not here to race, go the hell home - don't come here and grumble about going too fast. Why don't you tie a kerosene rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001

                                          A Offline
                                          A Offline
                                          Andy Brummer
                                          wrote on last edited by
                                          #21

                                          I just got a .Net job in Austin and when I was looking it was about an even mix between C++/MFC, C#, and Java. But the corporate stuff was almost all either .Net or Java.


                                          I can imagine the sinking feeling one would have after ordering my book, only to find a laughably ridiculous theory with demented logic once the book arrives - Mark McCutcheon

                                          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