Prior to .NET Framework 4, the development of in-process shell extensions using managed code is not supported at all because of the CLR limitation allowing only one .NET runtime per process. Jesse Kaplan, one of the CLR program managers, explains it in this MSDN forum thread: http://social.msdn.microsoft.com/forums/en-US/netfxbcl/thread/1428326d-7950-42b4-ad94-8e962124043e.
In .NET 4, with the ability to have multiple runtimes in process with any other runtime. However, writing managed shell extensions is still not supported. Microsoft recommends against writing them.
We built a whole namespace extension in .net and works fine including being able to provide callbacks to a file filter driver to manage Office File Open/Save dialogs. It is possible and works great.
Hi Jialiang, I've read through all your articles regarding Windows Shell Extension. They are really great ones. I am just curious whether it is officially supported now? Does Windows Shell team has a plan to get it supported in the near future?