Since the Idiot's Guide series has become quite large, here is an index of all the articles that gives a quick
blurb about each one, so you can quickly find the articles that interest you.
Some other dedicated folks are writing translations of the Guide. Here are the published translations:
- Alexander Shargin's Russian translation: Part
1, Part 2, Part
3, Part 4, Part
5, Part 6, Part
7, Part 8, Part
9.
- Maurice Montgenie's Win32 assembler
version.
- Gengis Dave's Italian translation.
Once at the site, click on Programmazione, then Libri. HTML and PDF versions available.
Part I - A step-by-step tutorial on writing shell extensions
![[Part 1 screen shot - 9K]](/KB/shell/shellextguideindex/ShellExtGuideIndex1.jpg)
Part I is a simple overview of shell extensions,
and discusses how to debug them. The sample extension illustrates adding items to the context menu for text files.
Part II - A tutorial on writing a shell extension that operates on multiple files at once
![[Part 2 screen shot - 5K]](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
Part II demonstrates how to write a context
menu extension that operates on all of the selected files at once. The sample project is a utility that adds registration
and unregistration commands to the context menus for DLLs.
Part III - A tutorial on writing a shell extension that shows pop-up info for files
![[Part 3 screen shot - 6K]](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
Part III demonstrates the QueryInfo extension
that customizes the infotip for text files. It also explains how to use MFC in a shell extension.
Part IV - A tutorial on writing a shell extension that provides custom drag and drop functionality
![[Part 4 screen shot - 12K]](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
Part IV shows how to add items to the menu
displayed when the user drags and drops with the right mouse button in Explorer. The sample project is a utility
that makes hard links for files. (Note: the extension is functional only on Windows 2000, but you can still compile
and run the extension on previous versions of Windows. See the article for instructions.)
Part V - A tutorial on writing a shell extension that adds pages to the properties dialog of files
![[Part 5 screen shot - 23K]](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
Part V demonstrates how to add new pages to
Explorer's Properties dialog. The sample project adds a page on which you can edit the created, modified, and last
accessed times of files.
Part VI - A tutorial on writing a shell extension that can be used on the Send To menu
![[Part 6 screen shot - 9K]](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
Part VI discusses a drop handler extension
that gets added to the SendTo menu. The sample project is a clone of the Send To Any Folder power toy.
Part VII - A tutorial on using owner-drawn menus in a context menu shell extensions, and on making a context
menu extension that responds to a right-click in a directory background
![[Part 7 screen shot - 6K]](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
Part VII tackles two topics suggested by readers:
owner-drawn menu items and the context menu for the background of directory windows. The sample project contains
two extensions: a bitmap viewer (pictured above) that puts a thumbnail of BMP files in the context menu, and a
simple extension that adds items to the context menu of directory backgrounds.
Part VIII - A tutorial on adding columns to Explorer's details view via a column handler shell extension
![[Part 8 screen shot - 6K]](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
Part VIII demonstrates how to add columns
to the details view of Explorer on Windows 2000. The sample project adds a few columns that show ID3v1 tag data
in MP3 files.. (This extension works only on Windows 2000.)
Part IX - A tutorial on writing an extension to customize the icons displayed for a file type.
![[Part 9 screen shot - 24K]](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
Part IX shows how to customize file icons
on a file-by-file basis. The demo project is an extension that shows 4 different icons for text files, depending
on the size of the file.
Michael lives in sunny Mountain View, California. He started programming with an Apple
//e in 4th grade, graduated from
UCLA with a math degree in 1994, and immediately landed a job as a QA engineer at Symantec, working on the Norton AntiVirus team. He pretty much taught himself Windows and MFC programming, and in 1999 he designed and coded a new interface for Norton AntiVirus 2000.
Mike has been a a developer at
Napster and at his own lil' startup, Zabersoft, a development company he co-founded with offices in Los Angeles and Odense, Denmark. Mike is now a senior engineer at
VMware.
He also enjoys his hobbies of playing pinball, bike riding, photography, and Domion on Friday nights (current favorite combo: Village + double Pirate Ship). He would get his own snooker table too if they weren't so darn big! He is also sad that he's forgotten the languages he's studied: French, Mandarin Chinese, and Japanese.
Mike was a
VC MVP from 2005 to 2009.