Jeff Prosise
The second edition of Jeff Prosise's
Programming Windows with MFC is a great introduction to the programming language that will help you build client-side applications in MFC. Though it doesn't cover Internet development, this title provides a worthy tutorial on traditional MFC programming.
After some MFC basics, the book looks at Graphical Device Interface (GDI) graphics with a fine discussion of drawing and font handling. Following this, Prosise introduces the use of the MFC collection classes (an alternative to STL) and file I/O, as well as adding serialization support to custom classes.
He also dedicates a fair amount of text to basic Windows controls and dialog boxes. His tour of support for both the Single Document Interface (SDI) and Multiple Document Interface (MDI) application styles is just excellent. The built-in view classes in MFC and how to use them in a Windows Explorer-style sample program are covered. From there, it's on to other common GUI interface models such as toolbars, status bars, and the new Internet Explorer-style rebars. After a useful section on printing (including some valuable real-world tips for this tricky topic), the rich array of Windows common controls is discussed. As in the first edition, Prosise's introduction to MFC multithreading and synchronization objects (like mutexes) is a standout.
The last section of the book provides a comprehensive discussion of COM and ActiveX programming for the MFC developer. Although the Active Template Library (ATL) is omitted here, there are fine examples of building and using ActiveX controls, including the basics of OLE automation.
Newly revised with richer examples and the latest Windows functionality, the second edition of Programming Windows with MFC provides one of the best available tutorials for traditional MFC development. --Richard Dragan
1 Truly beautiful work BUT........
no practical programs. Both "Windows programming" of my boss,Charles Petzold and the book taking draw, game programs to demonstrate.
Are there any books getting developers really inside industry projects using MFC or Windows API ??????
This question is my Christmas gift for Microsoft authors !!
2 who says it takes longer?
I managed to muddle my way through simple dialog-box based applications with hardly any documentation -- just advice from colleagues. When I got assigned to write a real live multi-threaded, multi-document app, I tried the books lying around the office which had helped me considerably with the simpler apps, but which left me much confused about things like device contexts. Why all of a sudden CClientDC instead of CPaintDC? And what is a DC anyway exactly? They say, "See, if you do this and this, then you can draw an ellipse that wiggles around." So I do that, and then try changing parameters, and am left only able to draw that ellipse. I can't make it purple.
I hate feeling like I don't really, REALLY know why I'm doing what I'm doing. And Prosise was an effective (and therefore quick) book which left me feeling like I knew. After about 2 days of reading and working with the examples, I felt I understood device contexts mapping modes, why I don't tell the Ellipse() routine what color ellipse I want. Prior to that, I'd spent 2 weeks with other books, not really getting it, not effectively able to modify the examples in the book.
Something about the way he organized it just got me to a point of clarity quicker, without nearly as much frustration. So don't let the 1300 pages throw you. It's not hard to read.
3 Best book in it's class
Over several years, I have purchased around a dozen books on MFC, and this one by far is not only the best one for learning MFC, but also the best to use as a reference (in addition to MSDN). Some of the examples were a little lengthy, as I prefer shorter examples. The first half of the book is essential for any windows programmer. The second half leans more towards particular advanced topics which are not needed by everyone, but good to have handy when the time comes.
4 Not Petzold, unfortunately
Unfortunately this wasn't written by the master, Petzold. However, it does an OK job, but be prepared to spend a lot of money on other books to compliment this one. I would suggest the O'reilly book Essence of C++ and the book Thinking in C++ by Bruce Eckel, plus the C++ reference from the O'Reilly series.
5 Good job!
This book is good if you're beginner in MFC, but it's advisable that you have other programming experience.
The book really shines in its presentation style, its easy and quick read with no long intros and summaries - every sentence is business, author seems be a real-life scenario expert. I haven't seen another book with such no-nonsense presentation style in quite a while.
6 The end-all-be-all of programming books
I'm a senior majoring in Computer Science at Wright State University located in Dayton Ohio. Sadly to say, I was disappointed that my University does not offer a Windows programming class as a requirement or an elective. So I went on a mission to find a MFC book. I stumbled across this book only two weeks ago, and I'm already writing Graphical User Interfaces. The writing flows, the examples are easy to understand, and the layout of the book is amazing. I strongly recommend this book to any professional or student who wants to learn Windows programming. Excellent Book.
7 deep, but too much
I felt this book did a poor introduction to mfc. The topics explain basic concepts way too deeply leaving the reader grasping for air, and struggling to find the end of each chapter.
What is needed are more abstract presentations of why different structures are useful. Too much is implied by the writer to the reader, which leads to never ending long sentences of ways of understanding things. Why must writers present such topics in such deep, and complex ways doesnt surprise me anymore. However, this book could certainly be useful to the advanced audience, it still presents information in an overstated complex form which causes too much page flipping and brain pain.
I am sure that prosise is a smart guy, seeing as he tries to cover every nook of mfc. Maybe for you this book will be helpful, but definately not if you are in any way a beginner with c++ or somebody who does not like too many details before understanding the big picture.
This book is collecting dust on myshelf. I developed one MFC application after spending weeks torturing myself reading it.
8 All I can say is MFC anyone?
This book has it all.. nothing more to say but buy it.
9 excellent book
If you want to be one MFC programmer, I strongly recommend this book to you. Prosise simplifies the complex MFC into a easy-understand form. I really like his writing style: concise, clear.
prosise avoided wizard to teach MFC,He write the sample program from scratch. I think it will give you a good understanding of MFC internal mechanism, make you not only know how to write code, but also actually know why ? I bieleive the good programmer must understand "why" , not "how". If you really want to be a good programmer ,don't hesitate! go to buy it ,then reading carefully.
10 excellent book
This book is really good. It tought me a lot about the way windows works and doesn't abstract it at all by using MFC or classes. It's kind of like the assembly of windows programming in that it's not neccessarily the best way to program windows apps, but you sure learn a lot about it. All in all, I'd reccomend this book to anyone who wants to learn about programming in windows.
11 Don't Buy this book
just simple fact. This book is a badly organized MFC reference.
I prefer using MSDN MFC refernce to this book.
If you want to learn about how MFC works try "inside visual c++ 5.0"
by David Kruglinsky ( no 6.0 version after his death) with
"Programming Windows" by Petzold ( for win 32 api and basic drawing).
12 The CD ebook installs just fine
I am only reviewing this to correct a recent review that claims the ebook doesn't install because it is a Windows 16 bit application. I bought this book the first month it came out and have been using it ever since. But I never even opened the CD at the back of the book. When I saw that review, I had to see for myself if the ebook wouldn't install, since I found that pretty incredible. Turns out the ebook installs just fine under W2K. There's probably something wrong with the user's OS. I find it hard to believe that Microsoft would regress and start shipping a version of the CD where the ebook doesn't install. Since I bought mine in the first printing, I doubt whether it EVER didn't install.
13 Try building 2D games using this book.
WSU Virtual Worlds: I teach a 2D (gdi and directx) and 3D (direct3d) university graphics class. Most students taking the class have a strong background in c/c++. C++ students are familar using stream I/O for input and output to their applications, and find MFC VC+ input methods new. MFC Visual c++ is a tool, designed to simplify and reduce Windows 32 api programming. It is a wizard driven tool. Object Oriented class wrap windows functionality within template classes. Tool wizards provide access to object methods and attributes. The class wizard controls attributes and methods for the application, mainframe, view, and document. MFC Visual C++ has numereous other class, such as, winsocket, threads, and filedialog; controls have MFC class definitions that can be generated.
MFC Visual C++ wizards direct api message maps designed to manipulate form events: window creation, destruction, timer events, scrollbar events, and more.
MFC Visual C++ wizards direct api message maps designed to manipulate input from the mouse movement, click, and state. The class wizard can be used to capture Keyboard keystrokes.
Back to the class, In the first part, students are given an assignments to create a 2D game using MFC VC++. The game must have menu items, keyboard and mouse input, and GDI objects: polygons, lines, circles,brushes, pens, and arches. Background sound is added to the game. OCX controls such as the animation control allow AVI movies to be played in the application.
Step by step instruction can be given in mass to a large group of students. MFC VC++ program is different not impossible. Game application parameters are input using popup dialog dialogs that contain listboxes, textboxes, checkboxes, radio buttons, combo boxes, and slider controls. Using DDE information is passed between the dialog and the form.
Moving to a new level of development. More advance knowledge of the Windows api is required as students learn how to program direct3D. Students are exposed more to the windows 32 api set as they work more within the windows architecture of directX 8.0 api's. Solid understanding of data types, pointers, and structures is required. A solid understanding of the win apis is required. DirectX has over 5,000 lines of api calls. Understanding each initialization sequence requires a very solid understand of the win 32 api, hardware architecture, and application MFC objects. 3D programmers are the world's best MFC VC++ programmers.
My advice is to use this book to get started programming simple 2D games. Build your confidence using MFC Visual C++ wizards and then move into robust and rigorous win32 api 3D programming. This book has all the building blocks to create 2D games and other applications.
14 Can you expect this from Microsoft? i guess yes..
I bought this book and was so happy that the accompanied CD contains eBook. I was glad because then i can travel without carrying 5lb book and read the book using the ebook.
Listen to this. I was disappointed when i opened the CD and launch the eBook setup.exe to install that. A message poped up on my screen saying that "setup.exe is 16bit application and you can not run it".
This is MS..why would you send 16bit application with MFC book.Who is running Windows 3.11 in this time? and if someone is then what is he doing with MFC book..:-)
Can't get eBook at all.
paracha3
15 An Excellent MFC Reference Book for Windows
Hi,
This is an unparalleled MFC reference. You will at one point or another need to look up something from Prosise's book. There are no exceptions! Buy it, read it, and keep it as a reference. In fact, I honestly feel that all MFC programmers should have a copy of it. It is to MFC as Programming Windows by Charles Petzold is to Win32 API.
I highly recommend Programming Windows with MFC Second Edition.
Kuphryn
16 Technical, clear and lots of know-how and practical advice
Jeff never seems to miss the point throughout his book, always
clarify and explain. He fantasticaly balances between the amount
of wizards and hand typed code, so when you write the apps, you still feel like a programmer and not a wizard expert. I came from the Unix world and knew C and all those system stuff, while
had limited knowledge of C++ but Java. Java gave me an intro to
OO programming so it was ok to move along with the writer.
Overall, this book is excellent for writing medium size apps that
perform daily tasks. I missed a little bit more on database operation and maybe windows sockets but of course, no book can
include everything. This book is already heavy enough to sleep with. Great job !
17 Excellent book for learning MFC
I have been writing Windows programs for several years, and have read many MFC books. This book is definitely one of the best around. It covers most of the stuff you need to know in detail. The examples provided are also quite good, not the trivial programs that you would usually see in most programming books.
A reader claimed that, "The examples aren't too helpful, and look the book is 1000+ pagesåÁK Keep it short and sweet, it'll take us the rest of our lives to finish reading this bookåÁK" This is simply not true. Programming for windows in MFC is not simple, if he cant get himself to read a 1000+ page book, then maybe programming isn't for him.
18 Good starting point but...
When I saw this book for the first time, I got the similar feeling when I first saw Charls Petzold's book for Windows 3.1 10 years ago. It seems a good documentation on the MFC. However, there are some issues that interests me but I could not in this book yet. For example, how to use ">>" operator to read a word from a file not a whole line. Using CFile, CArchive & CString did not work for me. I guess I have to learn more...
19 The premier resource for object-oriented programming.. NOT!
If I were this guy I'd take my picture off the front of the book. The examples aren't too helpful, and look the book is 1000+ pages. Keep it concise and give simple examples that illustrate what you're talking about buddy. Keep it short and sweet, it'll take us the rest of our lives to finish reading this book, well unless you have no life then thats a different story. All I have to say is don't get this book if you want to learn MFC.. It's useless. I don't know how this guy got his text published.
20 NOT PRACTICAL
Arcane and incomplete examples. A book is supposed to teach you not show you half of the solution. Definitely not for the beginner programmer. Arcaic and convulted examples. Not very realistic!!! Granted, C++ is not supposed to be easy but some of us have lifes and can't devote our life to C++...
21 It is fair, but not 'Excellent'
I brought this book by reading the reviews here. After finishing 90% of the chapters in 4 weeks, I found it is fair but does not deserve for an excellent rating.
First, every chapter of the book includes examples or source codes which are sort of 'beyond' what the author explained through out the chapter itself. (To give the reader an impression that he could do more 'advanced' things?)
Second, 99% of those 'advanced' programming tricks are related with Windows messaging service or how those messages are handledby Windows[ APIs like: GetMessage(), TranslateMessage(), PeekMessage(), SendMessage() ]. In that case, why he don't dedicate one additional chapter that explains the internal working of Window programming? Yes, I mean those APIs and
BOOL CALLBACK WndProc(HWND hWnd, UNIT uMsg, WPARAM wParam, LPARAM lParam}
etc.
Instead, the writer wastes a lot of space for sort of 'nonsense' stuff and left the vital areas untouched. Simply put, his approach isn't radical enough.
[Tip: I found sections on (window programming) from 'C/C++ programmer's Bible' helpful for this purpose. It is not as lengthy as this one BUT to the point!
another source is
MSDN----platform SDK---User Interface Services---Windowing]
Third, his source codes doesn't have any business value at all. Excuse me, if my comment is too harsh. But being a VB programmer for a while and almost everything I have coded is business-oriented, it is pain-in-da-neck to sallow his zero-value-added examples.
Forth, I suggest the publisher save the job of writing those 'advanced' topics for another author. I have been writing COM/ActiveX DLL-EXE/UserControl in VB for a long while and I know what I am talking about.
In a nut shell, this book is fair. But if you are an experienced programmer and are looking for a radical, efficient approach for MFC, I would suggest you to look somewhere else.
22 Good Reference Book but not good for beginners
The is no doubt that this is a must read book for the MFC programmer. As a reference book, it is excellent, but for the beginning MFC programmer, this book falls short as a tutorial.
My biggest complaint with the book is this:
Prosise repeatly states that learning MFC using wizards is a bad idea, and stresses the importance of learning to code MFC by hand. I couldn't agree more. In fact, I bought his book so that I could learn MFC without relying on code generators.
However, Prosise's "let's not use 'wizards'" attitude lasts only until chapter 4 - at which point, it's wizards all the way.
Why is it so difficult to find a MFC book that doesn't use wizards? These wizards generate code that is extremely obscure.
Even the simplest code that these wizards generate, requires an understanding of documents and views, a fairly complex subject in itself.
I just resently bought Herbert Schildt's "MFC programming from the ground up". This book seems to be the only truely wizard free MFC programming book on the market. The examples are hand coded and start forward. The beginner programmer would probably be better off, reading Schildt before going to Prosise.
I'm starting to believe that part off the reason MFC is so difficult is that all the tutorials drown the reader in wizard generated code. It should not take a brain surgeon to get a dialog box up and running.
23 The best MFC book available
I must say that I do not agree with people like Mr David who can only mention how "bulky" this book is. Why then, is there an e-book version included with the book?
I've been working in the IT industry for 6 years now and never found a better book on Windows programming using the C++ language / MFC library. This book is EXCELLENT. It changes your view of MFC totally.
The author has an exceptional talent to explain concepts clearly and in detail.
This is a SIX star book!
24 Don't try to go into MFC world without reading this book
This book will teach you every single tiny thing about MFC, you just need to be familiar with C++.
25 A Great, Bulky Book
A must-have for anyone willing to learn MFC, but not intented for C/C++ beginners as the concepts covered in this book are challenging for people with insufficient programming experience.
This book may be a handy tool if the publisher would enlarge it to letter size. With 1337 pages, including the index section, it is very difficult to find the specific topic within 5 seconds as oppose to other books.
26 Phenominal
This book is a must have for any serious MFC programmer. This indispensable work by Prosise pays due homage to Mr. Petzold's classic 'Programming Windows 3.1', and as well it should, but regardless has earned its stripes standing alone. The book has the fit and feel of Petzold's 3.1 - it is orgainized in a very simlar fashion, it speaks to the reader in much the same spirit, and it will place you in the upper tier of the developers in the company who really know something about MFC. So far, my office copy of Prosise MFC 2nd Ed. is nearly as marked up and commented as my trusty old Petzold 3.1, which along with K&R C, I refuse to banish to the attic.
If I had to have a gripe, I would say that it is one of the more expensive books that you will no doubt need two of. One for home and one personal copy at work - no you won't want to sign the waiting list for the company copy or hope that 'Joe' will lend you his for the day.
So buy it already.
27 Finally a good MFC book.
When I had to make the leap between C++ and windows programming I was so frustrated trying to find a book that explained MFC well. Either the books were too general or literally incomprehensible. This one is just right. While no one book can teach you everything about this subject, this one gives you a clear idea about many fundamentals as well as some more in-depth types of MFC programming. There are many sample programs within this book and they are all (for the most part) very well explained. You WILL be able to read MFC code and understand it once you finish this.
NOTE: I would however reccomend that a beginner read a more fundamental book first, just to get a firm handle on the basics and then move on to this one. Not that Procise doesn't explain things well, it's just that a novice may be too overwhelmed by the amount of information that is packed into this. If you thourougly understand this book, with the help of the MFC library you will be ready to begin as a windows programmer.
28 Worth the money
I am an experienced C and C++ programmer but on UNIX machines. A recent project required programming a 3-D medical imaging visualization program on a Windows platform. This book made the transistion to Windows and MFC much easier. Rarely did I come up with a question that I couldn't hunt down in Prosise's book. It helps not only with MFC function calls but with programming style as well. Not for the C++ novice, but if I were a somewhat experienced C++ programmer, I'd skip the introductory books, and buy this standard instead.
29 A real MFC bible
At lease I can always find the information if I want to do
something with MFC. The author has definitely thorough
understanding of MFC and windows. His examples are also easy
to follow. Even for the difficult parts, like COM and Automation,
the author can explain them in a style much more understandable
than any other MFC books I've read.
Please pay attention to where the author said you may need to spend more time and would benefit from the complete understanding. Try to re-read the part after you follow his examples. You will get bigger and more clear pictures about
what you have done!
It is a bible for MFC users and deserves the money you pay for it.
30 great
i cant think of a better book to learn mfc with. this guy is a genius, i want more books from this guy.
31 Very good book
After reading all the pages in the book (and others books about mfc). I can say now that it a really good book and worth the money and the time investing to use it to learn MFC.
This Book is more like the bible of MFC not just a typical vc++ book or MFC book , it teach you from the ground the MFC blocks and to understand what take happen inside. if you considering taking the MSCD exam i will say buy this book first .
c/c++ level : for reading this book you have to know the c and c++ language but not as an expert but more then the basic.
about the chapters : each of chapter(s) or subject(s) are very well organize is like you sitting in a private course and hearing the lecture from the pages and view the examples. you can find a lot of information about (not using the wizard!) : Drawing in windows,...,the MFC collection class ,File I/O Controls,Scroll view ,HTML View,Multiplie Documents and views,...,Toolbars Timers and idle processing,...,Thread and Thread synchronization... some ole and Active X,...,and alot more.
the English level : is very easy to understand , how ever there is a 1291 pages to read so find the time .
32 Great Book
This book is SO good. MFC becomes easy with this book.
33 Really helpfull !
I'm a junior programmer and I can say that this book really help me and my end project team to wisely use and manipulate MFC with Visual C++.
34 Book is not for beginning MFC programmers
In the beginning the book is too encyclopedic. There is much more information given than necessary. For example, in the chapter on menues, three methods for getting menus into an application are discussed whereas only one of these methods is widel used. The code examples are more complicated than necessary. For example the font view example is intended to show how to use a list box. It does this, but it also uses callback functions and the windows API function enumfont families which needlessly complicates the example. Something simpler such as putting items into a shopping cart would have done just as well. The chapters on container classes, file I/O, and serialization have no example programs at all. Finally the example used to illustrate document/view architecture has only one view, wheras the entire concept of document/view architecture is intended to support multiple views of a document object. One can learn MFC programming from this book, provided you realize that you don't have to understand everything in chapter two before going on to chapter 3, etc.
35 A soup to nuts feast for novices and veterans alike
Prosise has written a hefty tome that will act as a thorough reference for the experienced programmer and readable introduction for the (MFC) novice. If you don't know C++, get Bruce Eckel's Thinkning in C++ (2nd edition), but once you know your way around C++, Prosise will get you started and keep you going. Too many "Getting Started" books cost nearly as much as Programming Windows With MFC but leave you with nowhere to go. This book has it all. Prosise also seems to recognize that VC++ is not the only MFC IDE in the world, so Borland and Metrowerks customers may find this book more useful than other titles.
36 Great book!
I'll add my words to everyone else's. I love this book. It goes into a great deal of detail about how Visual C++ actually does what it does. I used it after studying the Win32 API and C++ to learn how Visual C++ builds on those two. While many books/classes skim over the surface of VC++ with wizards, etc, Prosise gets down to the nitty gritty of how MFC actually works. It is both really detailed and fairly easy to understand. No small feat.
37 The best book on MFC programming hands-down
If you are looking to learn how to program for Windows using the MFC library, then this book is a must have. This book is the ultimate reference, and therefore is also very useful to those who already program in MFC. The only problem with this book is that it is so long and detailed that it is very hard to read straight through from cover to cover. Therefore, I recommend "Programming Microsoft Visual C++ 5th Edition" as your main book to read while learning. That book is much easier and covers more ground. However, it's not even close to being as detailed as this book is. That is why I recommend reading "Programming Microsoft Visual C++" and, when you find a topic that interests you, find out more of the details in this book. Together, they make a great team. But, if you are only going to get one book on MFC, make it this one... it is the best on the subject, hands-down.
38 Good For Nothing
I bought the book to learn MFC fundamental, diappointed big time. May be good for advance developer but, If one want to learn, It will be waste of money and time. One point I never understood is that author says this book is ok for begginers and that is totally untrue. I had never expected this from Microsoft Press. I feel CHEATED. Sorry for those who bought this books to learn MFC. Vijay S. Sheth
39 This is the Bible of MFC programming
If I had a dime for every time I have seen the words " you need to read Petzold and Prosise " in a programming newsgroup, I would be richer than Bill Gates. I had the previous edition as a textbook when I was first learning MFC. That edition was excellent with great examples and wonderful text. This edition? Much better. Now included is information on using the Visual C++ 6.0 compiler, more on the collection classes and serialization, and more on ActiveX. If you want to learn Windows Programming, I mean REALLY learn Windows programming, learn C/C++ and then get Prosise and also get Petzold's bool Programming Windows to see the real in depth Windows programming.
40 Excellent coverage, good advice
I bought this book instead of one of Mike Blaszczak's "Professional MFC With VC++6". I like this author's writing style of presentation better than the chatty style of Blaszczak. Prosise starts with the basics, building an MFC application by hand and then shows you how to automate that process with the Wizards.
"Wizards" are just code generators, but once they generate the code it is YOUR code and you must understand, modify and maintain it as necessary. This is why I really like Prosise because he explains the basics to you so that when you generate code with the Wizards, it makes sense and doesn't look like 'magic' anymore.
I've read about half of this book since I got it and the quality has been excellent. I haven't found a single typographical or grammatical error so far and Prosise's explanations are concise (he treats the reader like an adult) but not so terse that you're left scratching your head. He gives good advice on style and code organization for MFC applications and provides hints on how to achieve specific results without trying to be an exhaustive cookbook on MFC tricks.
MFC is a big subject and I'd suggest that any reader be comfortable with programming. Being familiar with writing small Win32 SDK applications helps but isn't a strict requirement. If you haven't programmed in C++ very much, start with Stroustrup "C++ Programming Language", 3rd edition, and then move on to MFC.
This book will give you a solid foundation in MFC.
41 Excellent introduction to MFC
The book gives a very good introductionary to intermediate level view to MFC programming.The theory given explaning the points is excellent. The only area the book needs to be trimmed down is the length of the examples`. Actually the examples get so long that they get intermixed with other unrelated points(but important, anyway) that were not supposed be explained in that example!!
It also misses on topics of Database and Socket programming.
But anyway, excellent and highly recommneded.
42 Good as a tutorial and for reference
I can recommend this book for beginners to MFC or Windows programming in general, however, programmers who have done nothing beyond the console may be a bit overwhelmed at first. I had to reread many of the beginning examples to understand what was going on. Knowledge of C++ is a must; if you don't know anything about programming with C++ or classes, you'll need to learn that first. The lack of any discussion of network programming is a definite disadvantage, though it is not very difficult to learn Winsock and the MFC network classes from Internet sources, especially MSDN.
43 Great textbook...
I had this great MFC course in college, and this is the book our lecturer had reccomended. Even though I hadn't used it exstensively, at least not as much as some other reviewrs did, I disagree with those who think this is not a book for begginers. I had used it as a begginer (with a little classroom background) and not only enjoyed it, but also benefited from it...
44 this is what I needed
I've read through web pages and looked at the help files and source code, then it was time to get a book. Glad I made this book my choice, since it pretty much made me an excellent programmer. Is it for newbies? Newbies in windows programming? Yes, I didn't have much of experience in windows API, but managed to move along pretty smoothly with this book. Newbies in programming in general? probably not, unless u have solid C/C++ skills (then I guess you're not a newbie :) ), but I'm sure the book will be waiting for you... For MFC development, this IS the book.
45 Great for aspiring Windows developers
This book is great for anyone who wants to develop on the Windows environment. Jeff Prosise makes sure to explain all the details about MFC and how its used in a clear manner, which a lot of books I read before failed to do (like VC++ 5 Bible). It lets you in easy on the coding (and explaining some bugs here and there) and gives an in depth explanation on why things are the way they are in MFC. Of course, this book is not for beginners of C++, but for C++ programmers who wish to program on the Windows environment.
Though, one word of advice. Try to read Programming Windows by Charles Petzold first. You'll appreciate this book more if you read his book (even though it's C programming).
46 Simply the best
If you want to learn MFC, and know your C++, this is the book for you. I'd happily trade my entire collection of books on VC++ and MFC for a copy of Jeff Prosise's masterpiece.
47 The Must Have Resource for MFC
This book is an excellent resource for Win32 MFC Programming. This teaches you everything you could ever want to know how to do, with the possible exception of DLLs, which are easier written in Win32 API anyway. One word of warning however, although Prosise wrote and explained the topics in great detail, I found that I did not totally understand everything until I had learned API programming as well. I remember countless times after reading a chapter in Petzold's API book hitting myself in the head and going, "Ohhh.. so thats what he was talking about".
48 great book from beginner to intermediate users
When I started to learn MFC, I bought many books. Well, after I read all of them, I can create application myself without understanding the concept of MFC. Most of other MFC books just tell you to insert this and that to the .cpp and .h files without even mention what those lines mean. But this book is really fantastic in explaining all the codes in MFC, from the auto included codes done by visual C++ to all the codes that the book tells you to insert.
Besdies, the examples of this book are very illustrative. Though the examples are more complicated than other MFC books, the author explains them really well, and from the example, you will actually catch the concept of MFC programming.
One little flaw about this book is that it's not written as a reference book. it's more like a tutorial to someone who's new or intermediate to MFC but have some knowledge on C++. Thus, after 1 or 2 years in MFC, you might want to look for another MFC reference book.
49 Worth every penny!
I bought this book because it was highly recommended, but I was wary because of previous experience with similar books. However, as an intermediate Windows programmer, I was NOT disappointed. It is an excellent book for learning MFC, and teaches both the why and the how. It also tells what goes on behind the scenes, which can be very important.
For a beginner, I would recommend you learn some basic windows concepts, maybe with Petzold's Programming Windows 95, and have a good understanding of C/C++. Then go out and pick this book up if you want to learn MFC. (It does assume a knowledge of C++ and basic Windows)
This book is very thorough, and is an excellent teaching tool as well as a great reference.
Highly recommended.. 5 stars!
50 Comprehensive but Overrated
This book covers MFC in great detail. That can be a plus or a minus, depending on how you look at it. If you're a beginner, I would not recommend this book. Interestingly enough, in the book's introduction, the author writes: "[This book] was written with two kinds of people in mind: (1) Windows API programmers who want to learn MFC; (2) Programmers who have never before programmed Windows." I strongly disagree with (2). If you want to spend hours and hours reading this book at a snail's pace, and then going back and continually reviewing what you read, then I guess it's possible for you as a beginner to learn MFC from this book. For the majority of beginners, however, starting out with this book would not be the best way to learn MFC. (Of course, the author's job is to sell copies of his book, so why wouldn't he claim that it's for beginners too?)
The best part about this book is its comprehensiveness. So, if you're looking for a good reference, this book definitely gets a thumbs-up. But if you want clear discussions of fundamental MFC concepts, this book falls short. When you read this book, in many ways you can't see the forest for all the trees. That is, Prosise does a rather poor job of separating key, high-level concepts from more advanced, low-level details. The result is a book that is very dense and not so readable.
Even when he isn't getting bogged down in details, Prosise doesn't always present topics effectively. At some places his discussions are pretty good, but at others they aren't so clear. Frankly, although Prosise is a brilliant programmer, I don't think he's that gifted as a teacher. He no doubt understands the material himself, but he isn't nearly as skilled at presenting it to someone with little exposure to it.
If you're an intermediate MFC programmer--or, even better, an advanced one--this book can be a valuable resource. But if you're trying to navigate the waters of MFC/COM for the first time, try another book--and come back to this one after you've already learned the ropes.
51 Comprehensive but Overrated
This book covers MFC in great detail. That can be a plus or a minus, depending on how you look at it. If you're a beginner, I would not recommend this book. Interestingly enough, in the book's introduction, the author writes: "[This book] was written with two kinds of people in mind: (1) Windows API programmers who want to learn MFC; (2) Programmers who have never before programmed Windows." I strongly disagree with (2). If you want to spend hours and hours reading this book at a snail's space, and then going back and continually reviewing what you read, then I guess it's possible for you as a beginner to learn MFC from this book. For the majority of beginners, however, starting out with this book would not be the best way to learn MFC. (Of course, the author's job is to sell copies of his book, so why wouldn't he claim that it's for beginners too?)
The best part about this book is its comprehensiveness. So, if you're looking for a good reference, this book definitely gets a thumbs-up. But if you want clear discussions of fundamental MFC concepts, this book falls short. When you read this book, in many ways you can't see the forest for all the trees. That is, Prosise does a rather poor job of separating key, high-level concepts from more advanced, low-level details. The result is a book that is very dense and not so readable.
Even when he isn't getting bogged down in details, Prosise doesn't always present topics effectively. At some places his discussions are pretty good, but at others they aren't so clear. Frankly, although Prosise is a brilliant programmer, I don't think he's that gifted as a teacher. He no doubt understands the material himself, but he isn't nearly as skilled at presenting it to someone with little exposure to it.
If you're an intermediate MFC programmer--or, even better, an advanced one--this book can be a valuable resource. But if you're trying to navigate the waters of MFC/COM for the first time, try another book--and come back to this one after you've already learned the ropes.
52 Great but not for newbies
This is an excellent book to learn and for reference to use the MFC in Visual C++. But MFC is getting old and there are other frameworks superior to the MFC like the VCL (Visual Component Library). In VCL you can do anything that MS does and faster and safer. Why use MFC and Visual C++ when you have Borland's C++ Builder a truly Object Oriented and RAD tool for C++, real ANSI C++ not MS C++, it doesn't look like C++ at all. And you can do any low level stuff if you want.
Don't waste your time with MFC
53 Highly Recommended
I read the 1st Edition of this book and bought the 2nd Edition without even looking through it first. The 1st Edition was so informative and helpful, that I just had to have the 2nd Edition. I would recommend learning how to program Windows using "C" before reading this book, however.
54 Dense, rich, deep, informative
This is truly great a book. I've been so tired of seeing those books doing 'click, click' - so called wizard. As I've stated in title already, this book covers very valuable topics. I'm impressed! Only one drawback is that it took pretty long time to read the whole book... Well, still it's worth every second.
55 Basic Bolts to Flashy Functionality
This is THE book for anyone programming for the Windows platform! From beginners to experts, this book offers something for all learning levels. I keep 6 books within arms reach while programming and Prosise's book is number one. Without doubt, this book is a rock solid reference for any windows programming. Coding practices are obviously influenced from his days with Microsoft, adding more than the bare bones, straight-up, give it to me in three lines or less approach; however I found it very informative and helpful.
56 Excellent book for developers young and old!
This book covers a great deal of MFC development. The book starts with a little work with how Win32 programming is done in standard C (see, Charles Petzold's Programming Windows for more). The book clearly defines the inner workings of the "windows message pump" and gives the reader a sense of what environment they are heading into.
Warning: If you are not good in Object Oriented Programming this book is not the first step. First learn up on C++ and then think about jumping into MFC.
The writing is made clear and understandable at a "user level". The code is sometimes not fully completed (and can be obtained from the included CDROM), but all examples are clearily described line by line on what is going on in them.
The API's that are described throughout the book will definatly get you on your way to writing a class A application. The writer covers the use of GDI for graphic drawing, Single and Multiple Document interfaces, and works through almost every control that you have available in Visual C++ including Rich Edit Controls and Rich Edit Views. You can learn to print, write to disk, and access the windows registry (and much much more)
This books constantly gets passed between friends as they all have begun learning the inner workings of MFC and have left the days of the "win32 console application".
The book also includes a nice object oriented hierarchy diagram on the inside front cover of the Foundation Classes at your disposal.
Drawbacks: 1. Some examples use the Class Wizard, and other Visual C++ "helpers" which lead to some odd comments in the code, and less "handwritten" appeal.
2. The book is HUGE. Pretty heavy, and not always easy to read in a comfortable way.
3. Does not give you a 100% understanding of how MS Windows works internally. It has a good introduction, but if you want to know how it all works using MFC to encapsulate the more difficult functionality is probably not in your best interest.
-
I suggest both this book and "Programming Windows 5th Edition" by Charles Petzold for both C++ "MFC" and standard Win32 C programming. However, with this book you can write quick and dirty applications in no time flat!
57 great as a course and as a reference
This book is exceptional in that it will be by your side for as long as you program in MFC. I used this book as a curriculum for my independent study course in preparing for the certification exam 70-016 and it is awesome! He covers everything from painting a single black line to licencing activeX controls. Definately a keeper.
58 Best MFC book around, again!
This new version is just as great (maybe even better) than the previous edition. This new edition includes some good intro material on COM as well. If you are interested in programming Windows using MFC this will give you all the basic knowledge to get started. Prosise's writing style is very easy to understand for the novice and provides information that will teach the intermediate Windows programmer a thing or two.
59 Bible Book for MFC.
I have just one word to comment this book----it is a bible for the MFC that can compare with the "Progrmming Windows" by Charles Petzold
60 Great book
This book is realy GREAT about MFC and Windows programming. Now I have the most valuable book in my bookshelf. Buy it before any other ! Very deep insight. Explains actions that u have ever wanted to do, but u couldnt find them in other books. Bye a book for C++ before. I suggest Bruce Eckel's "Thinking in C++"Ø
61 Very well written and complete...
If you have an understanding of the fundamentals of the C++ language and would like to dive into MFC, I know no other way than to start out with this book. Jeff explains topics well and backs them up with good examples. The book is up to date and complete, covering the Microsoft Foundation Classes inside and out.
62 The second edition of Jeff Prosise's Programming Windows wit
. The last word of warning is that it is geared to the Visual C 6.0 compiler. So for those with Insprise, you aren't out of luck (it facilitates understanding 1000% still), just some of the stuff about using appwizards (which, come in handy) isn't going to apply to you. Prosise makes compensation for those with other compilers.
63 For the Windows programmer, it's *the* MFC book.
Just what I was looking for. Explains the MFC concepts from the ground up in an authoritative and approachable way. The examples are perfectly pitched and bring you step-for-step through the architecture of an MFC application. What I particularly liked was how, as I was going through the examples, the book seemed to anticipate my problems and questions. You get the impression that Prosise is a Windows programmer who had to go through the process you're now going through - and he's tripped all the wires.
It's not a book for programmers unfamiliar with C++, and some knowledge of how Win32 GUI programs are constructed is an advantage. However, if you're a current Windows programmer who needs to pick up MFC - it's *THE* book.
(One small gripe - I would have liked more on how MFC is used with the various UDA technologies. The CRowset class for example.)
64 Excellent book
This book is as comprehensive as they get. Very good coverage on all major MFC topics. I particularly like the fact that the book itself is included on the book's CD.
65 good book, but not necessarily for newbies
If I were a practising MFC programmer at the junior or intermediate level, I'd definitely want to have this book as a reference. It is one of the most complete MFC books around, and I like the author's approach of starting off with MFC basics and wrapper classes before moving onto application framework stuff and wizards. This is one of the few books that tells you what's behind some of those macros like DECLARE_DYNCREATE and tells you where to look for it in the source code of MFC itself.
However, if you are new to Visual C++ or have never heard of MFC, this is not the book I would recommend. I would suggest picking up Ivor Horton's Beginning Visual C++ 6 instead. Real beginners need a book that tells them how to use the IDE, debug programs, and use the wizards. So what if after reading it, all that wizard generated code becomes a blur to you. That's what Prosise and other more advanced books are for.
I'm an experienced C++ developer and I had read two MFC books (Beginning Visual C++ 6, MFC Programming by Alan Feuer) and Petzold 5th ed before reading Prosise and I still found it a little difficult reading, mostly because it starts off kind of slow (as someone else mentioned too). The chapter I found most difficult was the one on OLE clipboard/drag & drop.
I really recommend reading Petzold 5th ed before reading this or any other intermediate/advanced MFC book. Petzold is more of a beginner's book for Win32 SDK-style GUI programming.
66 Excellent!!!!!!!
This book is the 'bible' of MFC programmers. I have been working on MFC for the last two years. I struggled a lot while entering into MFC. Even with David Kruglinski's book , I struggled a lot in the beginning. But this one is excellent and the best investment I made in books.
67 THIS IS THE STANDARD!!
THIS BOOK STANDS ALONE IN THE MYRIAD OF VISUAL C++ 6 AND MFC BOOKS. THIS IS THE STANDARD BY WHICH ALL OTHERS WILL BE JUDGED, IN MY HUMBLE OPINION.
68 Clear and logical, this book makes MFC easy
I found this book a most excellent MFC resource, actually the best MFC book on the market. The author's talent in explaining things logically makes reading and understanding the complex MFC easy.
69 Starts slow and low, ends high and fly.
This is the best MFC book ever. Conversational style, and authoritative reference. He puts logic into the nonsensical, and starts slow (no appwizard shtuff and confusion until chapter 4) so everyone can understand. In chapter 4, he slowly walks you through your first simple program involving Visual C++ 6.0's mfc appwizard. This book was made for those who have no clue about the MFC tutorials (95% of those who use Visual C 6.0) in the MSDN library, but yet want to understand MFC someday.
However, know your inheritance of classes in C++ before reading. Reading Programming Windows 5th Edition by Charles Petzold before this isn't a bad idea either, but it isn't required, it just makes a much greater appreciation of MFC. MFC still doesn't stand totally on it's own without the win32 API either, but it comes pretty close. The last word of warning is that it is geared to the Visual C 6.0 compiler. So for those with Insprise, you aren't out of luck (it facilitates understanding 1000% still), just some of the stuff about using appwizards (which, come in handy) isn't going to apply to you. Prosise makes compensation for those with other compilers.
At the end, he goes into a pretty good COM ActiveX, and OLE tutorial (and how they apply to MFC) but nothing huge (a mere 220 pages).
70 Masterpiece! Only MFC Book I'd buy, if nothing else!!
By far the most "practical" book on the subject. A lot of information presented in a very nuclear manner. You can zero in on the topic and be done figuring out your problem in less than a few minutes. Very small (love it!) code snippets to illustrate the workings. Highly recommended. Caution: Cannot use it for learning MFC from grounds up [See Horton's book on Visual C++], since it might take eons to finish reading the book from cover to cover.
Although Mike Blaszczak's MFC book is written in the same spirit, it is far more confusing and stingy on "important" details as compared to this masterpiece by Prosise.
[Another useful practical book in MFC: Kaine's "The MFC Answer Book"]
71 No better book for beginners in Visual C++
I struggled to make the transition from my C++ primer to Visual C++ using Kruglinski. This book was then out of print. Now it's my favourite Visual C++/MFC book, and the one I recommend to colleagues needing to get up to speed and daunted by wizard-generated code. The prose is readable, the samples work, and the book covers all the basics as thoroughly as possible. As long as there's MFC, this will stay on my desk. Thanks, Jeff, for making it all so clearly comprehensible.
72 Excelent introductory book
This book provides an almost perfect way to learn using MFC. Starting without the document/view architecture it provides a short insight into internals of MFC and then it covers almost all parts of MFC in following chapters. In my opinion COM would deserve much more space then was available in the book, and there is also no database supprt discussion, but never mind: This is by far the most usefull book for MS Visual C++ programmers I have seen to date
73 Excellent book for beginers
This is the first book I read on MFC. Prosise does a great job explaning the concepts of MFC and the example code listings in the book nail down all the details. My only complaint is that I would have liked more on COM/OLE/Active X than given.
74 The most comprehensive book written on MFC
The author of this book neither spared any time writing it nor has he misunterstood the needs of both newcomers and proffesionals to MFC. Out of the many books available, he takes the most comprehensive, multi-audiential approach. I strongly suggest buying this book.
75 Good for Beginner and Self-learner
This is the best MFC book I have ever read. I am looking for a good MFC book for a long time. This book fits the need of the beginner in Visual C++. It explains every thing a beginner needs to know to produce a professional Appwizard.
It's not like the general Viusal C++ or MFC book that tell you to insert some lines in .h and .cpp file without explaining what you're doing. This book explains each line of code (even the code generated by the AppWizard) for you. This is a really good book.
76 Excellent !!
Really Excellent! Personally I think this book is the one of two best books for MFC windows programmers ( another one is Petzold's) . This is for serious programmer. Not easy to follow. but if you get through, you will get much more than you expected. The tips is, digest it, keep these books handy( plus one manual , plus intensive practice) , you can do whatever!
77 There is no doubt, this is the best book on MFC!
I have read a lot of good books on MFC, but this one stands above them all. This is the Petzold of MFC books. The information in this book has save me much time and effort. He goes beyond MFC and uses the API when MFC falls short and point out bugs both in the wizards and windows and how to get past them.
78 The best of All MFC books
Jeff Prosise's book is definitely the best book about MFC programs. I read many MFC book and this one is my favorite. He injected logic into confusing MFC and make MFC not boring anymore.