wixtoolset / issues

WiX Toolset Issues Tracker
http://wixtoolset.org/
129 stars 36 forks source link

SuppressIces does not accept multiple ICEs. #1122

Closed wixbot closed 8 years ago

wixbot commented 17 years ago

I am trying to use the following property definition in my MSBuild Project:

... ICE90;ICE61 ...

If I just include one of the ICEs, everything is OK, and the LIGHT command line shown in the MSBuild output is correct. I expected though that the above syntax would result in two separate -sice arguments, i.e.:

-sice:ICE90 -sice:ICE61

Instead, the command-line just inserts the property as-is:

-sice:ICE90;ICE61

LIGHT doesn't understand this and does not suppress either ICE.

I can't see any workaround for this, except to alter the source and recompile WixTasks.dll. Note that fudging my MSBuild project file to say...

ICE90 -sice:ICE61

...does not work, since quotes are used to escape the value:

-sice:"ICE90 -sice:ICE61"

Note: In case you are interested, the reason I am suppressing ICE61 is that there seems to be a bug whereby it only allows the build version to be in the range 0-32767 (should be 0-65535).

bq. Originally opened by @daveclud@ from "http://sourceforge.net/p/wix/bugs/842/":http://sourceforge.net/p/wix/bugs/842/

wixbot commented 12 years ago

Originator: NO

Cullen fixed this for me. Thanks, Cullen.

wixbot commented 12 years ago

Originator: YES

Note: I have since had a chance to test the code change to WixTasks. Changing the data type of the SuppressIces property to a string array and altering the GenerateCommandLineCommands method to use CommandLineBuilder.AppendArrayIfNotNull instead of CommandLineBuilder.AppendSwitchIfNotNull fixes the problem. I also tracked down the problem with ICE61 in darice.cub - the VBScript was incorrectly using a CInt instead of a CLng to parse the build portion of the version number. This may be fixed in a newer Platform SDK I guess.

wixbot commented 12 years ago

This Tracker item was closed automatically by the system. It was previously set to a Pending status, and the original submitter did not respond within 15 days (the time period specified by the administrator of this Tracker).