wix - ICE03: String overflow (greater than length permitted in column); Table: CustomAction -


i getting ice03: string overflow warning following code:

<customaction id="customactionid"           return="check"           property="someproperty"           value="very long string comes here"           execute="immediate"/> 

this code included in separate .wxs file in fragment. if include directly within "product" tag warning disappears. happens following code:

<binary id="somebinarywithaverylongname" sourcefile="sourcefile" /> 

i find out why happening?

the customaction/@value attribute has limit of 255 characters in windows installer. so, if "very long string comes here" has more 255 characters hitting ice warning. binary/@id shorter because "identifiers" in msi , windows installer standardized on 72 characters identifiers.

it mystery why ice03warning message different when placed under product element because ice validation executed against final msi. final msi not care how organized .wxs source code build msi. possible seeing other warnings (not ice03) based on whether code in product or under fragment?

the reason ask difference between product or fragment because compiler knows different things when compiling product section vs. fragment section. compiler knows product section creating .msi file. fragment on other hand creating .msi file, .msm file, or .msp file. .msm , .msp files have additional restrictions beyond .msi file.

for example, when building .msm file of identifiers suffixed module/@id. adds additional 37 characters identifiers limited 72 characters. binary/@id further limited because ends being name of stream in .msm file , can't go on around 60 chars.

anyway, net result when in fragment compiler applies possible rules identifiers. rules may more restrictive absolutely necessary in cases. if heed warnings/errors code should compile in cases.


Comments

Popular posts from this blog

linux - xterm copying to CLIPBOARD using copy-selection causes automatic updating of CLIPBOARD upon mouse selection -

c++ - qgraphicsview horizontal scrolling always has a vertical delta -