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
- Under HKEY_CLASSES_ROOT add you extension key such as .myx
- Set the (default) string value to a friendly name for your application.
- Create another key in HKEY_CLASSES_ROOT with the friendly name as specified in step 2.
- 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.
- 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