highly accurate, relevant and practical.
Despite the title, this book does not require Visual C++, though its use is assumed. It provides extensive coverage of Windows shell programming for Windows 9x and Windows NT 4. While it predates both Windows ME and 2000, the principles and examples will generally work on those platforms too.
The book is logically structured and suitable for use as a tutorial and as a reference source. The information contained within it is accurate and clearly explained. Most of all, it's based on the authors practical experience of shell programming rather than the official Microsoft documentation. This means that the places where reality differs from documented behaviour are highlighted and realistic solutions to the problems that ensue are provided.
Every chapter and almost every page includes extensive code samples and all chapters are concluded with a further reading section, which often directs one to the appropriate knowledge base articles. The lack of exercises and reviews is more than compensated for by the extensive example code.
The book assumes a reasonable grasp of C++, Windows programming in general and in particular COM and ATL programming.
While the table of contents is excellent and the book is logically laid out, the index could be improved. It's adequate, but that's all. There is no code disc available for the book, though the code and supporting materials are available from the Wrox web site. The author is also happy to handle email queries his email address is in the book, as are the publisher's technical team.
In conclusion, this book has certainly earned a place on my bookshelf. It's not for everyone after all it has an obvious and essential MS bias but it is highly accurate, relevant and practical.