title: Programmatically access the "Open with" Windows Explorer menu list from .NET
body: <p>When right-clicking a file in Windows Explorer, the "Open with" menu item displays a list of available applications, based on the file type of the clicked file.</p>
  
  <p>See this picture as an example:</p>
  
  <p><a href="https://i.stack.imgur.com/rONgL.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/rONgL.png" alt="&quot;Open with&quot; context menu in Windows Explorer"></a><br>
  <sub>(source: <a href="http://magerquark.de/data/misc/open-with.png" rel="nofollow noreferrer">magerquark.de</a>)</sub>  </p>
  
  <p>Now I want to be able to programmatically read the list of applications for a given file extension/type (e.g. "png") from within a C# .NET 2.0 application.</p>
  
  <p>E.g.</p>
  
  <pre><code>public class FileOpenInfo
  {
      public string ApplicationName { get; }
      public string ApplicationPath { get; }
  
      public static FileOpenInfo[] GetInformation( string extension );
  }
  </code></pre>
  
  <p><strong>Question:</strong></p>
  
  <p>Is it possible to get this list?</p>