Browse Source

Installer now shows a feature tree with the file associations that will be created by default. The user can choose which file associations are not created by either disabling them all or disabling them individually from the feature tree.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/2.1@2245 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Matt Ward 20 years ago
parent
commit
20eea2e9d5
  1. 193
      src/Setup/Files.wxs
  2. 225
      src/Setup/Setup.wxs
  3. 6
      src/Setup/SharpDevelop.Setup.wixproj

193
src/Setup/Files.wxs

@ -26,12 +26,17 @@ @@ -26,12 +26,17 @@
-->
<netfx:NativeImage Id="SharpDevelopNGenImage" Priority="0" />
</File>
</Component>
<Component Id="BooProjectFileAssociation" Guid="8FD60FEE-9220-4409-B98E-273AAC4A03E0" DiskId="1">
<!--
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.
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
@ -50,63 +55,116 @@ @@ -50,63 +55,116 @@
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. For now we can split these up,
putting the File association icon registry key with its
icon file and the rest of the file association with
the SharpDevelop.exe file. Unfortunately replacing the
ProgId/@Icon requires three registry key elements.
Running a quick test by deleting the registry keys and
then trying to repair the installation the keys are
correctly replaced with the correct file values so I
do not think this is a problem.
containing the icon.
http://msdn.microsoft.com/library/en-us/msi/setup/ice69.asp
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.
-->
<ProgId Id="SD.booprojfile" Description="Boo Project" Icon="&quot;[#prjx.ico]&quot;">
<Extension Id="booproj">
<Verb Id="open" Target="&quot;[#SharpDevelop.exe]&quot;" Argument="&quot;%1&quot;" />
</Extension>
</ProgId>
<ProgId Id="SD.cmbxfile" Description="SharpDevelop Combine" Icon="&quot;[#cmbx.ico]&quot;">
<Extension Id="cmbx">
<Verb Id="open" Target="&quot;[#SharpDevelop.exe]&quot;" Argument="&quot;%1&quot;" />
</Extension>
</ProgId>
<ProgId Id="SD.csprojfile" Description="C# Project" Icon="&quot;[#prjx.ico]&quot;">
<Extension Id="csproj">
<Verb Id="open" Target="&quot;[#SharpDevelop.exe]&quot;" Argument="&quot;%1&quot;" />
</Extension>
</ProgId>
<ProgId Id="SD.prjxfile" Description="SharpDevelop Project" Icon="&quot;[#prjx.ico]&quot;">
<Extension Id="prjx">
<Verb Id="open" Target="&quot;[#SharpDevelop.exe]&quot;" Argument="&quot;%1&quot;" />
</Extension>
</ProgId>
<ProgId Id="SD.sdaddinfile" Description="SharpDevelop Project" Icon="&quot;[#addin.ico]&quot;">
<Extension Id="sdaddin">
<Verb Id="open" Target="&quot;[#SharpDevelop.exe]&quot;" Argument="&quot;%1&quot;" />
</Extension>
</ProgId>
<ProgId Id="SD.vbprojfile" Description="VB.NET Project" Icon="&quot;[#prjx.ico]&quot;">
<Extension Id="vbproj">
<Verb Id="open" Target="&quot;[#SharpDevelop.exe]&quot;" Argument="&quot;%1&quot;" />
</Extension>
</ProgId>
<ProgId Id="SD.wixprojfile" Description="WiX Project" Icon="&quot;[#prjx.ico]&quot;">
<Extension Id="wixproj">
<Verb Id="open" Target="&quot;[#SharpDevelop.exe]&quot;" Argument="&quot;%1&quot;" />
</Extension>
</ProgId>
<ProgId Id="SD.xfrmfile" Description="SharpDevelop XML Form" Icon="&quot;[#xfrm.ico]&quot;">
<Extension Id="xfrm">
<Verb Id="open" Target="&quot;[#SharpDevelop.exe]&quot;" Argument="&quot;%1&quot;" />
</Extension>
</ProgId>
<ProgId Id="SD.slnfile" Description="SharpDevelop Solution" Icon="&quot;[#cmbx.ico]&quot;">
<Extension Id="sln">
<Verb Id="open" Target="&quot;[#SharpDevelop.exe]&quot;" Argument="&quot;%1&quot;" />
</Extension>
</ProgId>
<Registry Id="SD.booprojfile" Root="HKCR" Type="string" Key="SD.booprojfile" Value="Boo Project" KeyPath="yes">
<Registry Id="SD.booprojfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.booprojfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#prjx.ico]&quot;"/>
</Registry>
<Registry Id="SD.booprojfile.association" Root="HKCR" Type="string" Key=".booproj" Value="SD.booproj"/>
</Component>
<Component Id="SharpDevelopCombineFileAssociation" Guid="9D7E0D45-CD48-4A52-8875-939A78B8F710" DiskId="1">
<Registry Id="SD.cmbxfile" Root="HKCR" Type="string" Key="SD.cmbxfile" Value="SharpDevelop 1.x Combine" KeyPath="yes">
<Registry Id="SD.cmbxfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.cmbxfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#cmbx.ico]&quot;"/>
</Registry>
<Registry Id="SD.cmbxfile.association" Root="HKCR" Type="string" Key=".cmbx" Value="SD.cmbxfile"/>
</Component>
<Component Id="CSharpFileAssociation" Guid="C98CAD28-2903-4B3A-8C56-B4A09AEC4509" DiskId="1">
<Registry Id="SD.csfile" Root="HKCR" Type="string" Key="SD.csfile" Value="C# File" KeyPath="yes">
<Registry Id="SD.csfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.csfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#cs.ico]&quot;"/>
</Registry>
<Registry Id="SD.csfile.association" Root="HKCR" Type="string" Key=".cs" Value="SD.csfile"/>
</Component>
<Component Id="SharpDevelopCSharpProjectFileAssociation" Guid="3BDC1362-4363-42AF-821D-B06516A715E2" DiskId="1">
<Registry Id="SD.csprojfile" Root="HKCR" Type="string" Key="SD.csprojfile" Value="C# Project" KeyPath="yes">
<Registry Id="SD.csproj.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.csproj.icon" Type="string" Key="DefaultIcon" Value="&quot;[#prjx.ico]&quot;"/>
</Registry>
<Registry Id="SD.csproj.association" Root="HKCR" Type="string" Key=".csproj" Value="SD.csproj"/>
</Component>
<Component Id="SharpDevelop11ProjectFileAssociation" Guid="DD3AAFF7-A307-4918-A33E-35620A2118F6" DiskId="1">
<Registry Id="SD.prjxfile" Root="HKCR" Type="string" Key="SD.prjxfile" Value="SharpDevelop 1.x Project" KeyPath="yes">
<Registry Id="SD.prjxfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.prjxfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#prjx.ico]&quot;"/>
</Registry>
<Registry Id="SD.prjxfile.association" Root="HKCR" Type="string" Key=".prjx" Value="SD.prjxfile"/>
</Component>
<Component Id="ResxFileAssociation" Guid="EA3BA93F-C2EE-4FB2-AEA7-A661A3054AB1" DiskId="1">
<Registry Id="SD.resxfile" Root="HKCR" Type="string" Key="SD.resxfile" Value="Resx File" KeyPath="yes">
<Registry Id="SD.resxfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.resxfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#resx.ico]&quot;"/>
</Registry>
<Registry Id="SD.resxfile.association" Root="HKCR" Type="string" Key=".resx" Value="SD.resxfile"/>
</Component>
<Component Id="ResourcesFileAssociation" Guid="9CC7AE6F-F0B2-47E7-9DD4-0C571C89F46D" DiskId="1">
<Registry Id="SD.resourcesfile" Root="HKCR" Type="string" Key="SD.resourcesfile" Value="Resources File" KeyPath="yes">
<Registry Id="SD.resourcesfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.resourcesfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#resx.ico]&quot;"/>
</Registry>
<Registry Id="SD.resourcesfile.association" Root="HKCR" Type="string" Key=".resources" Value="SD.resourcesfile"/>
</Component>
<Component Id="SharpDevelopAddInFileAssociation" Guid="EBBEA1CE-1CA8-4A69-81ED-D81BD8597A39" DiskId="1">
<Registry Id="SD.sdaddinfile" Root="HKCR" Type="string" Key="SD.sdaddinfile" Value="SharpDevelop AddIn Installation Package" KeyPath="yes">
<Registry Id="SD.sdaddinfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.sdaddinfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#addin.ico]&quot;"/>
</Registry>
<Registry Id="SD.sdaddinfile.association" Root="HKCR" Type="string" Key=".sdaddin" Value="SD.sdaddinfile"/>
</Component>
<Component Id="VBFileAssociation" Guid="C25FF25E-6E21-432A-A477-40293CE8783B" DiskId="1">
<Registry Id="SD.vbfile" Root="HKCR" Type="string" Key="SD.vbfile" Value="VB.NET File" KeyPath="yes">
<Registry Id="SD.vbfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.vbfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#vb.ico]&quot;"/>
</Registry>
<Registry Id="SD.vbfile.association" Root="HKCR" Type="string" Key=".vb" Value="SD.vbfile"/>
</Component>
<Component Id="SharpDevelopVBProjectFileAssociation" Guid="BDA641EE-B110-4E09-B4C6-7D2DBBFA578A" DiskId="1">
<Registry Id="SD.vbprojfile" Root="HKCR" Type="string" Key="SD.vbprojfile" Value="VB.NET Project" KeyPath="yes">
<Registry Id="SD.vbprojfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.vbprojfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#prjx.ico]&quot;"/>
</Registry>
<Registry Id="SD.vbprojfile.association" Root="HKCR" Type="string" Key=".vbproj" Value="SD.vbprojfile"/>
</Component>
<Component Id="SharpDevelopWixProjectFileAssociation" Guid="FB612902-CD8E-4161-8F95-3280AE433D11" DiskId="1">
<Registry Id="SD.wixprojfile" Root="HKCR" Type="string" Key="SD.wixprojfile" Value="WiX Project" KeyPath="yes">
<Registry Id="SD.wixprojfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.wixprojfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#prjx.ico]&quot;"/>
</Registry>
<Registry Id="SD.wixprojfile.association" Root="HKCR" Type="string" Key=".wixproj" Value="SD.wixprojfile"/>
</Component>
<Component Id="SharpDevelopXmlFormFileAssociation" Guid="621910C8-91FC-4383-85AA-7E9D786DAF84" DiskId="1">
<Registry Id="SD.xfrmfile" Root="HKCR" Type="string" Key="SD.xfrmfile" Value="SharpDevelop XML Form" KeyPath="yes">
<Registry Id="SD.xfrmfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.xfrmfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#xfrm.ico]&quot;"/>
</Registry>
<Registry Id="SD.xfrmfile.association" Root="HKCR" Type="string" Key=".xfrm" Value="SD.xfrmfile"/>
</Component>
<Component Id="XmlFileAssociation" Guid="EB0CC9A4-2934-465B-831F-0EC4B718A162" DiskId="1">
<Registry Id="SD.xmlfile" Root="HKCR" Type="string" Key="SD.xmlfile" Value="XML File" KeyPath="yes">
<Registry Id="SD.xmlfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.xmlfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#xml.ico]&quot;"/>
</Registry>
<Registry Id="SD.xmlfile.association" Root="HKCR" Type="string" Key=".xml" Value="SD.xmlfile"/>
</Component>
<Component Id="SharpDevelopSolutionFileAssociation" Guid="A5E7E0DE-7A32-439D-8155-C4335A2E4876" DiskId="1">
<Registry Id="SD.slnfile" Root="HKCR" Type="string" Key="SD.slnfile" Value="SharpDevelop Solution" KeyPath="yes">
<Registry Id="SD.slnfile.command" Type="string" Key="shell\open\command" Value="&quot;[#SharpDevelop.exe]&quot; &quot;%1&quot;"/>
<Registry Id="SD.slnfile.icon" Type="string" Key="DefaultIcon" Value="&quot;[#cmbx.ico]&quot;"/>
</Registry>
<Registry Id="SD.slnfile.association" Root="HKCR" Type="string" Key=".sln" Value="SD.slnfile"/>
</Component>
<Component Id="SharpDevelopExeFiles" Guid="B9427DC8-6C86-4D1A-B3DC-1B0E0F1F1DC1" DiskId="1">
<File Source="..\..\bin\SharpDevelop.exe.config" Name="sharpdev.con" Id="SharpDevelop.exe.config" LongName="SharpDevelop.exe.config" />
@ -1139,6 +1197,29 @@ @@ -1139,6 +1197,29 @@
<Condition>Privileged</Condition>
<Registry Id="SharpDevelopAppPathRegistryKey" Key="Software\Microsoft\Windows\CurrentVersion\App Paths\SharpDevelop.exe" Root="HKLM" Value="[!SharpDevelop.exe]" Type="string" Action="write" />
</Component>
<!--
Dummy components that are empty. These are used so
the feature tree does not show the Network installation
as an option.
-->
<Component Id="DummyCompleteFeatureComponent" Guid="22AB4C49-89FD-413F-8A1D-456AFB1AD611">
<!--
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
-->
<CreateFolder />
</Component>
<Component Id="DummyFileAssocationFeatureComponent" Guid="F0390EC4-6B66-4823-B4F4-7F29E3D6AB54">
<!--
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
-->
<CreateFolder />
</Component>
</Directory>
</Directory>
</Directory>
@ -1174,4 +1255,4 @@ @@ -1174,4 +1255,4 @@
</Directory>
</DirectoryRef>
</Fragment>
</Wix>
</Wix>

225
src/Setup/Setup.wxs

@ -1,40 +1,40 @@ @@ -1,40 +1,40 @@
<!--
<!--
Installer for SharpDevelop.
-->
<Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">
<!--
<!--
Windows Installer only recognises 3 digits for the product version (Major.Minor.Build)
so the third digit must be the Subversion revision.
-->
<Product Id="$(var.PRODUCTCODEGUID)"
Name="SharpDevelop 2.1 Beta 3"
Manufacturer="ic#code"
Language="1033"
Codepage="1252"
UpgradeCode="A1F371B6-4218-4F60-B01E-C996DF461B10"
Version="2.1.$(var.PRODUCTBUILDVERSION)">
Name="SharpDevelop 2.1 Beta 3"
Manufacturer="ic#code"
Language="1033"
Codepage="1252"
UpgradeCode="A1F371B6-4218-4F60-B01E-C996DF461B10"
Version="2.1.$(var.PRODUCTBUILDVERSION)">
<Package Id="$(var.PACKAGECODEGUID)"
Description="SharpDevelop 2.1.0.$(var.PRODUCTBUILDVERSION)"
InstallerVersion="300"
Compressed="yes"/>
Description="SharpDevelop 2.1.0.$(var.PRODUCTBUILDVERSION)"
InstallerVersion="300"
Compressed="yes"/>
<!-- Upgrade information -->
<Upgrade Id="A1F371B6-4218-4F60-B01E-C996DF461B10">
<!-- Checks for older versions -->
<UpgradeVersion Minimum="2.1.0"
IncludeMinimum="yes"
Maximum="2.1.$(var.PRODUCTBUILDVERSION)"
IncludeMaximum="no"
Property="PREVIOUSVERSIONFOUND"/>
IncludeMinimum="yes"
Maximum="2.1.$(var.PRODUCTBUILDVERSION)"
IncludeMaximum="no"
Property="PREVIOUSVERSIONFOUND"/>
<!-- Checks for newer versions -->
<UpgradeVersion OnlyDetect="yes"
Property="NEWERVERSIONFOUND"
Minimum="2.1.$(var.PRODUCTBUILDVERSION)"
IncludeMinimum="no"/>
Property="NEWERVERSIONFOUND"
Minimum="2.1.$(var.PRODUCTBUILDVERSION)"
IncludeMinimum="no"/>
</Upgrade>
<!--
<!--
Conditions to be satisfied before the installer begins.
Note that we are using "Installed OR" in the conditions so
so they never block the user from repairing, patching, or
@ -44,7 +44,7 @@ @@ -44,7 +44,7 @@
and then run the msi to uninstall SharpDevelop. Without the
"Installed OR" this would not be allowed.
-->
<!--
<!--
Check for .NET 2.0
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msinetassemblysupport.asp
-->
@ -52,7 +52,7 @@ @@ -52,7 +52,7 @@
Installed OR MsiNetAssemblySupport &gt;= "2.0.50727"
</Condition>
<!--
<!--
Check for the operating system is at least Windows 2000 (VersionNT = 500).
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/operating_system_property_values.asp
-->
@ -60,7 +60,7 @@ @@ -60,7 +60,7 @@
Installed OR VersionNT &gt;= 500
</Condition>
<!--
<!--
Check the user has elevated permissions. We need admin rights to NGen
SharpDevelop.exe, to install NUnit into the GAC and to register the Help
collection.
@ -84,7 +84,7 @@ @@ -84,7 +84,7 @@
Privileged
</Condition> -->
<!--
<!--
Install for all users.
Using ALLUSERS=2 means SharpDevelop can be installed by a non-admin.
@ -97,8 +97,8 @@ @@ -97,8 +97,8 @@
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/allusers.asp
-->
<Property Id="ALLUSERS">2</Property>
<!--
<!--
Support entries shown when clicking "Click here for support information"
in Control Panel's Add/Remove Programs
@ -110,36 +110,56 @@ @@ -110,36 +110,56 @@
<Property Id="ARPURLUPDATEINFO">http://icsharpcode.net/OpenSource/SD/Download/</Property>
<!-- Suppress the Modify button in the Control Panel's Add/Remove Programs -->
<!--
<!--
Temporarily disabled whilst using the WixUI library
<Property Id="ARPNOMODIFY">1</Property>
-->
<!-- Puts SharpDevelop icon in Control Panel's Add/Remove Programs -->
<Property Id="ARPPRODUCTICON">SharpDevelopIcon.exe</Property>
<Icon Id="SharpDevelopIcon.exe" SourceFile="..\Main\StartUp\Project\Resources\SharpDevelop.ico"/>
<!--
<!--
Source media for the installation.
Specifies a single cab file to be embedded in the installer's .msi.
-->
<Media Id="1" Cabinet="contents.cab" EmbedCab="yes" CompressionLevel="high"/>
<!-- Installation directory and files are defined in Files.wxs -->
<Directory Id="TARGETDIR" Name="SourceDir"/>
<!--
<!--
Currently just one core feature to install everything.
Source code will become a separate feature. Perhaps all the add-ins too could
each be a feature if the user wants to heavily customise the installation.
-->
<Feature Id="Complete" Level="1">
<!--
<Feature Id="Complete"
Title="SharpDevelop 2.1"
Description="Installs SharpDevelop and registers file associations"
Level="1"
ConfigurableDirectory="INSTALLDIR"
Absent="disallow"
AllowAdvertise="no"
InstallDefault="local"
Display="expand">
<!--
We put a reference to a dummy component which contains no files
so we can get rid of the Network install options from the drop
down menu for this feature. Seems to be a bug in Windows Installer.
-->
<ComponentRef Id="DummyCompleteFeatureComponent"/>
<!--
The SharpDevelop application. This may at some point in the distant
future be further subdivided into addin features, but doing this
will mean a new ProductCode will need to be generated.
-->
<Feature Id="SharpDevelop" Level="1">
<Feature Id="SharpDevelop"
Title="SharpDevelop"
Description="Installs SharpDevelop"
Level="1"
InstallDefault="local"
AllowAdvertise="no"
Absent="disallow">
<ComponentRef Id="SharpDevelopExe"/>
<ComponentRef Id="SharpDevelopExeFiles"/>
<ComponentRef Id="SharpDevelopDocFiles"/>
@ -321,13 +341,138 @@ @@ -321,13 +341,138 @@
<ComponentRef Id="SharpDevelopWebsiteShortcut"/>
<ComponentRef Id="SharpDevelopAppPathRegistrySetting"/>
</Feature>
<Feature Id="SharpDevelopFileAssociations"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="File Associations"
Description="Registers file associations with SharpDevelop.">
<!--
We put a reference to a dummy component which contains no files
so we can get rid of the Network install options from the drop
down menu for this feature. Seems to be a bug in Windows Installer.
-->
<ComponentRef Id="DummyFileAssocationFeatureComponent"/>
<Feature Id="BooProjectFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="Boo Projects (.booproj)"
Description="Associates Boo projects (.booproj) with SharpDevelop">
<ComponentRef Id="BooProjectFileAssociation"/>
</Feature>
<Feature Id="CombineFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="SharpDevelop 1.x Combines (.cmbx)"
Description="Associates SharpDevelop 1.x Combines (.cmbx) with SharpDevelop">
<ComponentRef Id="SharpDevelopCombineFileAssociation"/>
</Feature>
<Feature Id="CSharpFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="C# Files (.cs)"
Description="Associates C# Files (.cs) with SharpDevelop">
<ComponentRef Id="CSharpFileAssociation"/>
</Feature>
<Feature Id="CSharpProjectFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="C# Projects (.csproj)"
Description="Associates C# Projects (.csproj) with SharpDevelop">
<ComponentRef Id="SharpDevelopCSharpProjectFileAssociation"/>
</Feature>
<Feature Id="SD11ProjectFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="SharpDevelop 1.x Projects (.prjx)"
Description="Associates SharpDevelop 1.x Projects (.prjx) with SharpDevelop">
<ComponentRef Id="SharpDevelop11ProjectFileAssociation"/>
</Feature>
<Feature Id="ResxFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="Resource Files (.resx)"
Description="Associates Resource Files (.resx) with SharpDevelop">
<ComponentRef Id="ResxFileAssociation"/>
</Feature>
<Feature Id="ResourcesFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="Binary Resource Files (.resources)"
Description="Associates Binary Resources files (.resources) with SharpDevelop">
<ComponentRef Id="ResourcesFileAssociation"/>
</Feature>
<Feature Id="AddInFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="SharpDevelop AddIn Installation Packages (.sdaddin)"
Description="Associates SharpDevelop AddIn Installation packages (.sdaddin) with SharpDevelop">
<ComponentRef Id="SharpDevelopAddInFileAssociation"/>
</Feature>
<Feature Id="SolutionFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="SharpDevelop Solutions (.sln)"
Description="Associates SharpDevelop Solutions (.sln) with SharpDevelop">
<ComponentRef Id="SharpDevelopSolutionFileAssociation"/>
</Feature>
<Feature Id="VBFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="VB.NET Files (.vb)"
Description="Associates VB.NET Files (.vb) with SharpDevelop">
<ComponentRef Id="VBFileAssociation"/>
</Feature>
<Feature Id="VBProjectFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="VB.NET Projects (.vbproj)"
Description="Associates VB.NET Projects (.vbproj) with SharpDevelop">
<ComponentRef Id="SharpDevelopVBProjectFileAssociation"/>
</Feature>
<Feature Id="WixProjectFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="SharpDevelop WiX Projects (.wixproj)"
Description="Associates SharpDevelop WiX Projects (.wixproj) with SharpDevelop">
<ComponentRef Id="SharpDevelopWixProjectFileAssociation"/>
</Feature>
<Feature Id="XmlFormFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="SharpDevelop XML Forms (.xfrm)"
Description="Associates SharpDevelop XML Forms (.xfrm) with SharpDevelop">
<ComponentRef Id="SharpDevelopXmlFormFileAssociation"/>
</Feature>
<Feature Id="XmlFileAssociation"
Level="1"
AllowAdvertise="no"
InstallDefault="local"
Title="XML Files (.xml)"
Description="Associates XML Files (.xml) with SharpDevelop">
<ComponentRef Id="XmlFileAssociation"/>
</Feature>
</Feature>
</Feature>
<!-- Using WixUI temporarily -->
<Property Id="WIXUI_INSTALLDIR">INSTALLDIR</Property>
<UIRef Id="WixUI_InstallDir"/>
<!--
<UIRef Id="WixUI_FeatureTree"/>
<!--
If a newer version of SharpDevelop 2.1 is installed show an
error message.
@ -336,10 +481,10 @@ @@ -336,10 +481,10 @@
configured everything.
-->
<CustomAction Id="NoDowngrade" Error="A later version of [ProductName] is already installed." />
<!-- Add RemoveExistingProducts action to install sequence so upgrades can work -->
<InstallExecuteSequence>
<!--
<!--
Display an error message if a newer version found.
Since the installer completely removes the existing SharpDevelop 2.1
@ -347,7 +492,7 @@ @@ -347,7 +492,7 @@
inform the user that a newer version already exists.
-->
<Custom Action="NoDowngrade" After="FindRelatedProducts">NEWERVERSIONFOUND</Custom>
<!--
<!--
Removes the older version of SharpDevelop 2.1, if we are upgrading,
before installing the new version.

6
src/Setup/SharpDevelop.Setup.wixproj

@ -11,9 +11,7 @@ @@ -11,9 +11,7 @@
<OutputPath>bin\</OutputPath>
<WarningLevel>0</WarningLevel>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
<LocalizedStringFile>..\..\bin\Tools\Wix\WixUI_en-us.wxl</LocalizedStringFile>
<PreBuildEvent>..\Tools\UpdateSetupInfo\bin\UpdateSetupInfo.exe</PreBuildEvent>
<RunPostBuildEvent>Always</RunPostBuildEvent>
<LocalizedStringFile>$(WixToolPath)\WixUI_en-us.wxl</LocalizedStringFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<BaseOutputPath>obj\</BaseOutputPath>
@ -26,7 +24,7 @@ @@ -26,7 +24,7 @@
<ItemGroup>
<Compile Include="Setup.wxs" />
<Compile Include="Files.wxs" />
<WixLibrary Include="..\..\bin\Tools\Wix\wixui.wixlib" />
<WixLibrary Include="$(WixToolPath)\wixui.wixlib" />
<Compile Include="NetFxExtension.wxs" />
<None Include="Readme.txt" />
</ItemGroup>

Loading…
Cancel
Save