windows installer - MSI Validation returns "ICE81 Failure ICE Internal Error 1867. API Returned: 1615." -
all of msi installations display same ice81 "failure" during validation can't figure out causing it. happens no matter msi editor use run validation (ms orca, flexera installshield, instedit.com). installation packages use external cab files located in correct place (same folder msi file) , cab files signed same digital signature msi file signed (and records in media, msidigitalcertificate, msidigitalsignature, , msipatchcertificate tables appear correctly authored).
ice81 failure ice internal error 1867. api returned: 1615. msieditor_full_path\darice.cub ice81 failure error 2228: c:\users\my_user_name\appdata\local\temp\random_tmp_filename.tmp, feature_name, select `diskid`, `cabinet` `media` (`diskid` = cab_name.cab) msieditor\darice.cub
any ideas?
the error error_bad_query_syntax
means "the sql query syntax invalid or unsupported." so, internal sql query ice making validate msi failing. looking @ query part can failing query: where diskid=cab_name.cab
.
looking closer issue cab_name.cab
string means supposed enclosed in single quotes. in other words, should like: 'cab_name.cab'
. why didn't ice correctly quote string? well, answer.
the diskid
column of media
table supposed number. somehow cab_name.cab
got inserted first column of media
table number (like 1
) expected instead. ice doesn't put quotes around diskid
because it's expecting number , numbers not supposed quoted.
to fix, change diskid
(first) column of media
table positive number (i 1
) , put cab_name.cab
value in cabinet
(fourth) column.
i'm not sure tools allowed put string in integer column might send them bug since sorts of things won't work. :)
Comments
Post a Comment