Using 'Open With' System Dialog in C#

Vivek has a project where he's written the interop layer to access the Windows shell's 'Open With' Dialog -- the one where you can associate a file extension with the application that should open it. It's a dialog that you may find useful in one of your applications, but isn't supported in the .NET libraries.

Having the interop and marshalling code, lets you call ShellExecuteEx, which you may find other uses for.