On our recent project we had an requirement for assigning a icon to a file type which is not associated with any executable. Visual Studio installer project does a great job of creating such association if there is a executable involved. Else we need to manually add some registry edit steps in the installer process. The changes required were
  1. Under HKEY_CLASSES_ROOT add you extension key such as .myx
  2. Set the (default) string value to a friendly name for your application.
  3. Create another key in HKEY_CLASSES_ROOT with the friendly name as specified in step 2.
  4. Create a sub key for key created in step 3 with name DefaultIcon. Its (default) string should point to the folder location where the icon is.
  5. In case of Visual Studio Setup project the macro [TARGETDIR] comes in handy. This macro can help identify the location of the icon file if stored in the installation folder iteself. For example [TARGETDIR]Process.ico
Happy Coding,