Geeks With Blogs

Microsoft All-In-One Code Framework is updated on 2010-09-06.

Download address:

If it’s the first time that you hear about Microsoft All-In-One Code Framework, please read the introduction on our homepage, and this Port25 article  


Windows Shell Extension New Samples



How to write a Windows Shell extension using managed code (C#/VB.NET) is an extremely host question in MSDN forums and newsgroups. Prior to .NET Framework 4, the development of in-process shell extensions using managed code is not officially supported 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:

In .NET 4, with the ability to have multiple runtimes in process with any other runtime, Microsoft can now offer general support for writing managed shell extensions—even those that run in-process with arbitrary applications on the machine. This article introduces the in-process side-by-side feature in detail. However, please note that you still cannot write shell extensions using any version earlier than .NET Framework 4 because those versions of the runtime do not load in-process with one another and will cause failures in many cases.

The documents explains the theory. How can I on earth write a managed shell extension?

If you search on the internet, you would find that there’s almost zero .NET 4 shell extension samples. The few .NET 2 shell extension samples (not supported because of the above reason) have more or less some defects, e.g. not being able to load in x64 environment.  In order to meet customers’ want, All-In-One Code Framework would like to fill in the blank. The project group has planned a series of .NET 4 managed Shell extension code samples for Context Menu Handler, Property Sheet Handler, Icon handler, Data handler, Drop handler, Drag-and-drop handler, Thumbnail Handler, Icon Handler, Icon Overlay Handler, and so on. In this release of All-In-One Code Framework, we provide the first batch of samples. You can find them in the Visual Studio 2010 folder. More will be provided in the future releases. Please stay tuned.

Name Description Owner
CppShellExtContextMenuHandler Shell context menu handler (C++) Jialiang
CSShellExtContextMenuHandler Shell context menu handler (C#) Jialiang
VBShellExtContextMenuHandler Shell context menu handler (VB.NET) Jialiang
CppShellExtPropSheetHandler Shell property sheet handler (C++) Jialiang

Azure New Samples

CSAzureXbap, VBAzureXbap
In a typical cloud development scenario, you host a web service in the cloud, distribute a client application from the cloud, and consume the service from the client application.
This sample demonstrates the above typical scenario, where the client application is a XBAP application, and the cloud service is a WCF service hosted in a Windows Azure Web Role.

Data Platform New Samples

CSEFPOCOChangeTracking, VBEFPOCOChangeTracking
These two samples demonstrate how to update POCO entity properties and relationships with and without Change Tracking proxies.   You can read more about Tracking Changes in POCO Entities here.

Silverlight New Samples

Silverlight4 support netTcp transport binding element, which gives us a new choice to implement duplex WCF. In this sample, we create a simple weather report subscription application to demonstrate how to consume netTcp WCF in Silverlight.

Windows Base New Samples

CppCheckProcessBitness, CSCheckProcessBitness, VBCheckProcessBitness
A frequently asked question in MSDN forums is that, given a process, how can I programmatically detect if it’s running in the 32bit mode or 64bit mode. These code samples answer it. The code logic is that
1. All processes running under 32bit OS are 32bit.
2. On 64bit OS, 32bit process can only run under Wow64.
  1) if the process is running under Wow64, it's a 32bit process.
  2) if the process is not running under Wow64, it's a 64bit process.

Posted on Wednesday, September 8, 2010 10:32 PM | Back to top

Comments on this post: Microsoft All-In-One Code Framework New Samples Updated on 2010-09-06

No comments posted yet.
Your comment:
 (will show your gravatar)

Copyright © Geekswithblogs | Powered by: