tags:

views:

763

answers:

5

I am currently trying to learn C++ win32 with buttons window creation shell procces and im not getting most of this is there a place to learn all of this (place == book) just for beginners

+5  A: 

The following includes answers to the "Win32 for beginners?" question: http://stackoverflow.com/questions/574092/where-can-i-find-good-ebooks-to-learn-win32

The other part of your question, i.e. "C++ for Win32?", has several possible answers that I know of:

  1. Just use C++ as "a better C", and see references for 'Win32 for beginners using C'.

  2. Microsoft have a library called "MFC", which is a C++ class library that wraps (encapsulates) the Win32 API. MFC was designed long ago and is not good, modern C++ class design (e.g. it uses lots of macros). It is presumably easier to use if you already know the underlying (C-style) Win32 API.

  3. Other C++ class libraries from Microsoft:

    • The "ATL" is newer than MFC, 'lighter' than MFC (i.e. you only link to whatever subset of its functionality you use), and is based on templates.
    • The "WTL" is a windowing template library built on ATL, which has never been officially suported by Microsoft but is available as open source.
    • "ATL Server" (which is a rather confusing name) is a C++-based web framework. It is no longer being developed by MS, but it continues to be supported up through VS2005's support lifetime (see http://blogs.msdn.com/vcblog/archive/2007/07/27/support-policy-for-atl-server-library.aspx)
  4. There may be 3rd-party C++ wrappers for Win32; I'm thinking especially of the cross-platform toolkits like Qt/Windows and wxWidgets.
ChrisW
ATL is still fully supported by Microsoft. What you might have been thinking about is one of the following 2 items: 1) WTL - which is a windowing template library built on ATL that has never been officially suported by Microsoft - it's avaliable as open source.
Michael Burr
OR 2) "ATL Server" (which I think is a rather confusing name) is a C++-based web framework. It is no longer being developed by MS, but it continues to be supported up through VS2005's support lifetime (see http://blogs.msdn.com/vcblog/archive/2007/07/27/support-policy-for-atl-server-library.aspx)
Michael Burr
+2  A: 

Win32 + C++ usually means MFC. Out of print but you may find a used or ebook copy of Jeff Prosise's Programming Windows with MFC. This book is excellent.

Serge - appTranslator
+3  A: 

Get The Petzold. It is the book on Win32 programming. Without all of that MFC muckety muck. Even if you never get this far down, it will help you understand what those MFC classes are trying to do.

toast
A: 

This is probably the best book to learn MFC:

http://www.amazon.com/Programming-Microsoft-Visual-C/dp/1572318570/ref=sr_1_1?ie=UTF8&s=books&qid=1235325547&sr=1-1

If you want to learn how to write a framework for Windows, here's a book on it:

http://www.amazon.com/Windows-Writing-Reusable-Schulman-Programming/dp/020160891X/ref=sr_1_1?ie=UTF8&s=books&qid=1235325590&sr=1-1

Tommy Hui
While the Dilascia book might be good in a lot of ways, it's from 1992 - it covers Win16 (not Win32) and the C++ is decidedly pre-standard. It's probably not a good choice for a novice tutorial.
Michael Burr
The Kruglinski book is often recommended, but I find that it goes to great lengths to say what is obvious and doesn't go any further. It may be good for complete newcomers but even they will outgrow it quickly. The Prosise book in much better. There's also http://www.amazon.co.uk/Professional-MFC-Visual-C-6/dp/1861000154 which is quite old but explains very well the things that it does cover. The Dilascia book is a classic for those wanting to write their own frameworks rather than using what's already there; now hard to find.
dajames
A: 

The only book is the Petzold (in C, but easy to convert into C++ classes). Avoid MFC.

2 380 hits on Professional Win32 api group for more than 20 years

and you can't find it ?!!!!