I've got two problems I need help with, and I hope somebody here can help me with them.
I'm using WiX 3.0.5210, by the way. First problem: When I install a (major) upgrade, it's not deleting any files that were created in the [D_Perl] directory or subdirectories that were not installed by the MSI. I thought the RemoveFolder tag did just that. What else do I need to do? (Note that if this has to be implemented as a custom action, the custom action has to be compilable using the MingW-gcc toolchain, instead of using Visual Studio. I don't know if that toolchain has the msi import libraries yet.) Second problem: The shortcut [C_S_CPAN_Client] is being created, but its icon [I_cpan.bat] is not being displayed (It gets replaced by the normal batch file icon, and when I try to change the icon, it says that there are no icons in the applicable file.) The icon file referred to is a copy of the icon file [I_cpanweb.url] being used in [C_S_CPAN_Search], which IS being displayed. (I wanted to check and see if the problem wasn't that I was referring to the same icon file in two different places.) Am I doing something wrong? Can anybody help me with either or both of these? Applicable wxs sections are below, the full files (and all the other files that are used) are included in http://csjewell.comyr.com/work/fragments.zip (280,966 byte file) Yes, it is being created by a Perl script I'm writing, this isn't hand-written (WAY too much to be hand-written) Main file: (Perl-Dist-WiX Test Perl.wxs) <?xml version="1.0" encoding="utf-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Product Id='7B3EE0A1-4FD7-3766-86DD-B1D06F0C4BE1' Language='1033' Manufacturer="Curtis Jewell" Name="Perl-Dist-WiX Perl Test" UpgradeCode="29287F64-E2D6-3E24-91B6-24461B4A6CCA" Version="5.10.1" > <Package Description='Perl for Win32 operating systems.' Id='*' Languages='1033' Platform='x86' InstallerVersion='200' Compressed='yes' InstallPrivileges='elevated' /> <Media Id="1" Cabinet="Perl.cab" CompressionLevel="high" EmbedCab="yes" /> <CustomAction Id="PreventDowngrading" Error="A newer version of Perl-Dist-WiX Perl Test is already installed." /> <Upgrade Id="29287F64-E2D6-3E24-91B6-24461B4A6CCA"> <UpgradeVersion Minimum="5.10.1" IncludeMinimum="yes" OnlyDetect="yes" Language="1033" Property="NEWERVERSIONDETECTED" /> <UpgradeVersion Minimum="5.0.0" IncludeMinimum="yes" Maximum="5.10.1" IncludeMaximum="no" Language="1033" Property="OLDERVERSIONBEINGUPGRADED" /> </Upgrade> <InstallExecuteSequence> <Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWERVERSIONDETECTED</Custom> <RemoveExistingProducts After="InstallInitialize" /> </InstallExecuteSequence> <InstallUISequence> <Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWERVERSIONDETECTED</Custom> </InstallUISequence> <Condition Message="You need to be an administrator to install this product."> Privileged </Condition> <Condition Message="Can only install for all users on the machine."> <![CDATA[ALLUSERS = 1]]> </Condition> <Condition Message="Cannot install on Windows 9x or ME systems."> <![CDATA[VersionNT]]> </Condition> <Condition Message="Cannot install on Windows NT 4.0 systems."> <![CDATA[VersionNT > 400]]> </Condition> <UIRef Id="WixUI_Minimal" /> <UIRef Id="WixUI_ErrorProgressText" /> <UIRef Id="WixUI_Common" /> <Property Id="INSTALLDIR">C:\WiXPerl</Property> <Directory Id='TARGETDIR' Name='SourceDir'> <Directory Id='INSTALLDIR'> <Directory Id='D_Perl' Name='perl'> <Directory Id='D_DC5CE757_AEB8_3149_81E1_0EE55B238196' Name='bin' /> <!-- ... (and so on for about 200 lines) --> <Directory Id='D_License' Name='licenses'> <Directory Id='D_FEB85698_C30F_35D7_B48E_EFEF335C9DBA' Name='dmake' /> <Directory Id='D_487F41B9_E194_30D2_93CD_01C3A336AB98' Name='gcc' /> <Directory Id='D_925475BA_C87A_31C3_B650_8C4F7802DA0B' Name='mingw' /> <Directory Id='D_D0DF1DF2_FD07_3F27_9B37_5B905B344ED3' Name='perl' /> <Directory Id='D_E77D7635_0114_3FFD_A827_9CC9EB7A4F68' Name='pexports' /> </Directory> <Directory Id='D_Cpan' Name='cpan' /> <Directory Id='D_Win32' Name='win32' /> </Directory> <Directory Id='ProgramMenuFolder'> <Directory Id='D_App_Menu' Name='Perl-Dist-WiX Perl Test' /> </Directory> </Directory> <Feature Id='Complete' Title='Perl-Dist-WiX Perl Test 5.10.0' Description='The complete package.' Level='1'> <ComponentRef Id='C_1B0F58AF_4567_32B8_8639_A6F38538BB2B' /> <!-- ... (and so on for about 2600 lines, and yes, the components that are in the fragments below are included.) --> </Feature> <Icon Id='I_cpan.bat' SourceFile='C:\strawberry\perl\site\lib\auto\share\dist\Perl-Dist-WiX\cpan.ico' /> <Icon Id='I_cpanweb.url' SourceFile='C:\strawberry\perl\site\lib\auto\share\dist\Perl-Dist-WiX\cpanweb.ico' /> <Icon Id='I_perldoc.url' SourceFile='C:\strawberry\perl\site\lib\auto\share\dist\Perl-Dist-WiX\perldoc.ico' /> <Icon Id='I_win32.url' SourceFile='C:\strawberry\perl\site\lib\auto\share\dist\Perl-Dist-WiX\win32.ico' /> <Property Id='ARPNOREPAIR'>1</Property> <Property Id='ALLUSERS'>1</Property> <Property Id='ARPCOMMENTS'>Perl-Dist-WiX Perl Test 5.10.0</Property> <Property Id='ARPCONTACT'>Curtis Jewell</Property> <Property Id='ARPURLINFOABOUT'>http://csjewell.comyr.com/perl/</Property> <WixVariable Id='WixUILicenseRtf' Value='C:\strawberry\perl\site\lib\auto\share\dist\Perl-Dist-WiX\License.rtf' /> </Product> </Wix> And here's the fragment that tries to remove the folder: (PerlFolder.wxs) <?xml version='1.0' encoding='windows-1252'?> <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'> <Fragment Id='Fr_RemovePerlFolder'> <DirectoryRef Id='D_Perl'> <Component Id='C_RemovePerlFolder' Guid='F26F0747-91C7-367A-87D5-D8AFF00AC946'> <RemoveFolder Id='RF_Perl' On="uninstall"/> </Component> </DirectoryRef> </Fragment> </Wix> And here's the fragment that provides the shortcut icons. (Icons.wxs) <?xml version='1.0' encoding='windows-1252'?> <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'> <Fragment Id='Fr_Icons'> <DirectoryRef Id='D_App_Menu'> <Component Id='C_S_CPAN_Client' Guid='8C96CA50-D0BE-35D6-954C-B95F7EA03698'> <Shortcut Id='S_CPAN_Client' Name='CPAN Client' Description='CPAN Client' Target='[D_DC5CE757_AEB8_3149_81E1_0EE55B238196]cpan.bat' Icon='I_cpan.bat' WorkingDirectory='D_DC5CE757_AEB8_3149_81E1_0EE55B238196' /> <CreateFolder Directory="D_App_Menu" /> </Component> <Component Id='C_S_CPAN_Search' Guid='4518C5B7-2BE7-3513-9DB0-1A4D8E1C6340'> <Shortcut Id='S_CPAN_Search' Name='CPAN Search' Description='CPAN Search' Target='[D_Win32]CPAN Search.url' Icon='I_cpanweb.url' WorkingDirectory='D_Win32' /> <CreateFolder Directory="D_App_Menu" /> </Component> <Component Id='C_S_Perl_5.10.0_Documentation' Guid='B7CE40B2-F2C5-3999-8CFE-4382E7445BA8'> <Shortcut Id='S_Perl_5.10.0_Documentation' Name='Perl 5.10.0 Documentation' Description='Perl 5.10.0 Documentation' Target='[D_Win32]Perl 5.10.0 Documentation.url' Icon='I_perldoc.url' WorkingDirectory='D_Win32' /> <CreateFolder Directory="D_App_Menu" /> </Component> <Component Id='C_S_Win32_Perl_Wiki' Guid='A509DF94-1580-3AE9-BCDC-0A3E0E0E08F1'> <Shortcut Id='S_Win32_Perl_Wiki' Name='Win32 Perl Wiki' Description='Win32 Perl Wiki' Target='[D_Win32]Win32 Perl Wiki.url' Icon='I_win32.url' WorkingDirectory='D_Win32' /> <CreateFolder Directory="D_App_Menu" /> </Component> <Component Id='C_RemoveShortcutFolder' Guid='B895E2A7-A342-3EA8-A5D0-00BAE2B4B08C'> <RemoveFolder Id="D_App_Menu" On="uninstall" /> </Component> </DirectoryRef> </Fragment> </Wix> --Curtis -- Curtis Jewell swords...@csjewell.fastmail.us %DCL-E-MEM-BAD, bad memory -VMS-F-PDGERS, pudding between the ears [I use PC-Alpine, which deliberately does not display colors and pictures in HTML mail] -- Curtis Jewell swords...@csjewell.fastmail.us %DCL-E-MEM-BAD, bad memory -VMS-F-PDGERS, pudding between the ears [I use PC-Alpine, which deliberately does not display colors and pictures in HTML mail] ------------------------------------------------------------------------------ Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users