diff --git a/src/Setup/Files.wxs b/src/Setup/Files.wxs
index 03e97d6baf..ea1397e12f 100644
--- a/src/Setup/Files.wxs
+++ b/src/Setup/Files.wxs
@@ -10,72 +10,72 @@
+ NGens SharpDevelop.exe. Needs the NetFx extension (WixNetFxExtension.dll),
+ library (netfx.wixlib) and custom actions (netfxca.dll).
+
+ Priority=0 means the image generation occurs during
+ setup. Other values defer the generation.
+
+ Default Platform value is 32bit which tries to generate images
+ for 32 bitversions of the .NET framework on the
+ target machine. This will fail on a machine with
+ 64 bit version of .NET. Cannot use Platform=all
+ since this runs NGen for both 32 and 64 bit versions
+ regardless of whether they exist on the target
+ machine.
+ -->
+ Get several ICE33 warnings using the ProgId element
+ but these apparently can safely be ignored
+ according to a post on the wix-users list by
+ Rob Mencshing. Also using the ProgId element
+ does not create the ProgId table. The current installer
+ no longer uses the ProgId but instead uses Registry
+ keys instead. It still creates the same entries in the
+ msi.
+
+ http://sourceforge.net/mailarchive/message.php?msg_id=9075241
+
+ Note that the Target of the form [#FileId] expands out to the
+ full path of the file. A target of the form [!FileId]
+ expands to the short name of the file (i.e. it includes ~
+ characters). We need the full path otherwise the exe name
+ will be something like SharpDev~1.exe and the
+ SharpDevelop.exe.manifest file will not be found when
+ running the application so it does not use XP visual styles.
+ Unfortunately using [#FileId] generates lots of ICE69
+ warnings for the icon and the SharpDevelop.exe target
+ if they are in a different component.
+ Not sure why [!FileId] does not produce an error since
+ the problem seems to be similar, basically the registry
+ key generated by the ProgId element belongs to one
+ component whilst we are referencing another component
+ containing the SharpDevelop.exe and another
+ containing the icon.
+
+ http://msdn.microsoft.com/library/en-us/msi/setup/ice69.asp
+
+ The ICE69 errors can be ignored for now since the component
+ being referenced by the file associations will always be installed
+ even though it is in a different feature. If the FileTypeRegister
+ addin is an optional install then the ICE69 errors would need to
+ be resolved.
+
+ We are not using the ProgId element which sets up the
+ file association registry keys for us, but are specifying them
+ directly as registry keys. This allows us to use one of the keys
+ as a key path instead of having to use the parent component's
+ directory as the key path. The key path is what is used
+ by the installer to detect whether the component is installed.
+ Using the component's parent directory (i.e. the Bin folder)
+ is not feasible since the file associations may not be installed
+ if the user does not install them in the feature tree.
+ -->
@@ -696,71 +696,29 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -816,6 +774,17 @@
+
+
+
+
+
+
+
+
+
+
+
@@ -1500,50 +1469,50 @@
+ The choice here is to either useW the IniFile element to
+ generate the two website shortcuts or create a
+ SharpDevelop.url file on disk and use a File element and
+ link to the file instead. We will use a file otherwise an
+ upgrade will not remove the existing website shortcut.
+ -->
+ ICE18 - Force the empty folder to be created. Even though it
+ has sub folders the validator flags this as an error.
+
+ http://msdn.microsoft.com/library/en-us/msi/setup/ice18.asp
+ -->
+ App Path registry setting lives in HKLM so only add it if the
+ user has admin rights.
+ -->
Privileged
+ Dummy components that are empty. These are used so
+ the feature tree does not show the Network installation
+ as an option.
+ -->
+ Fix ICE18 error. The validator thinks that the install folder
+ could be empty so we have to use CreateFolder in this component.
+
+ http://msdn.microsoft.com/library/en-us/msi/setup/ice18.asp
+ -->
+ Fix ICE18 error. The validator thinks that the install folder
+ could be empty so we have to use CreateFolder in this component.
+
+ http://msdn.microsoft.com/library/en-us/msi/setup/ice18.asp
+ -->
@@ -1553,9 +1522,9 @@