Programming is fun! So as part of my regular work, I had to write a shell extension that'll display some options in the right click context menu for some specific type of files. The first search took me to http://www.codeproject.com/Articles/441/The-Complete-Idiot-s-Guide-to-Writing-Shell-Extens
Its a cool tutorial, only that the demo is not in VC++ 2010 that I was using. I was initially using VC++ 2010 express, so it didn't have ATL. I had to download VC++ Ultimate. The tutorial says add a class in the classview. I couldn't figure out what it was. (I have never programmed in VC++!) It just occured to me and the classview was available in the VIEW tab. Another gotcha here. In the tutorial it says disable aggregation on Attributes page. There is no attributes page in VC++ 2010. That option is in OPTIONS tab. Eventually, with some hooking around asking for help, I was directed to a python implementation of the same solution, which, by the way, is pretty cool. So I went ahead and executed it, but.. there is entry in the registry but the menu item won't appear. Some more fooling around I guess. Anyway, the issue had been that I was using 32-bit Python and 32-bit Pywin32 on a 64-bit Windows 7. On updating the python and pywin32 to a 64 bit, everything seems to work.
PS. Python is awesome!
The links :
Pywin32 : http://sourceforge.net/projects/pywin32/files/pywin32/Build%20217/
File : \Lib\site-packages\win32comext\shell\demos\servers\context_menu.py
Its a cool tutorial, only that the demo is not in VC++ 2010 that I was using. I was initially using VC++ 2010 express, so it didn't have ATL. I had to download VC++ Ultimate. The tutorial says add a class in the classview. I couldn't figure out what it was. (I have never programmed in VC++!) It just occured to me and the classview was available in the VIEW tab. Another gotcha here. In the tutorial it says disable aggregation on Attributes page. There is no attributes page in VC++ 2010. That option is in OPTIONS tab. Eventually, with some hooking around asking for help, I was directed to a python implementation of the same solution, which, by the way, is pretty cool. So I went ahead and executed it, but.. there is entry in the registry but the menu item won't appear. Some more fooling around I guess. Anyway, the issue had been that I was using 32-bit Python and 32-bit Pywin32 on a 64-bit Windows 7. On updating the python and pywin32 to a 64 bit, everything seems to work.
PS. Python is awesome!
The links :
Pywin32 : http://sourceforge.net/projects/pywin32/files/pywin32/Build%20217/
File : \Lib\site-packages\win32comext\shell\demos\servers\context_menu.py
Comments
Post a Comment