title: Get File Icon used by Shell
body: <p>In .Net (C# or VB: don't care), given a file path string, FileInfo struct, or FileSystemInfo struct for a real existing file, how can I determine the icon(s) used by the shell (explorer) for that file?</p>
  
  <p>I'm not currently planning to use this for anything, but I became curious about how to do it when looking at <a href="https://stackoverflow.com/questions/462232/what-is-the-best-vb-net-control-standard-custom-for-displaying-list-of-files">this question</a> and I thought it would be useful to have archived here on SO.</p>