cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
bucifalek
Level 3

not a proper MSI when creating a patch

Hi,

Last week I created a setup version 1.0.0.0 (basic MSI, uncompressed, custom action with installscript). This week I modified it a little bit and created setup version 1.0.1.0 and run into a problem with patch creation.

When I use Patch Design and fill everything, what is needed, the creation fail with an error. In log file is written "ERROR: UpgradedImages.MsiPath 'C:\MyPath\MyApp.msi' is not a proper MSI."

I appreciate any help cause I coudn't find anything on the Internet.
Labels (1)
0 Kudos
(2) Replies
bucifalek
Level 3

Here is what it writes:

Created release folders
Performing Upgrading and Patching Validation
Val0003: This setup will perform a MINOR upgrade of the referenced previous setup c:\installshield 2008 projects\MyApp\ProductConfiguration1\uncompressed\diskimages\disk1\MyApp.msi

Creating Patch Configuration Properties...
Building MsiPatchMetadata table
Building ISPatchWholeFile table
Creating Patch...
Validating MSI input file...
Table: Properties
Table: ImageFamilies
Table: FamilyFileRanges
Table: UpgradedImages
Cleaning up temporary files...
ISDEV : error -6415: There was an error creating the patch package. Writing contents of log file 'C:\InstallShield 2008 Projects\MyApp\PatchConfiguration1\Interm\PatchCreation.log' to output window.

***** Log starting: 2007-12-13 15:58:59 *****

Input-PCP path = 'C:\InstallShield 2008 Projects\MyApp\PatchConfiguration1\Interm\PatchTemplate.pcp'
Patch-MSP path = 'C:\InstallShield 2008 Projects\MyApp\PatchConfiguration1\Patch\PatchConfiguration1.msp'
Temp Folder = 'C:\DOCUME~1\cz2p9p00\LOCALS~1\Temp\~pcw_tmp.tmp\'
Patch GUID = '{174064B5-2CFC-4270-8ED6-357BE7B0CE4F}'
ListOfPatchGUIDsToReplace = ''
ListOfTargetProductCodes = '*'
PatchSourceList = 'PatchSourceList'
AllowProductCodeMismatches = '1'
AllowProductVersionMajorMismatches = '1'
OptimizePatchSizeForLargeFiles = '1'
ApiPatchingSymbolFlags = '0x00000000'
MsiFileToUseToCreatePatchTables = ''
SqlCmdToCreatePatchTable = ''
SqlCmdToCreatePatchPackageTable = ''
SqlCmdToCreateMsiPatchHeadersTable = ''
DontRemoveTempFolderWhenFinished = '0'
IncludeWholeFilesOnly = '0'
MinimumRequiredMsiVersion = '200'
SEQUENCE_DATA_GENERATION_DISABLED = '0'
AllowRemoval = ''

Using internal SQL cmd to create 'Patch' table.
Using internal SQL cmd to create 'PatchPackage' table.
Using internal SQL cmd to create 'MsiPatchHeaders' table.

ERROR: UpgradedImages.MsiPath 'C:\InstallShield 2008 Projects\MyApp\ProductConfiguration1\update\diskimages\disk1\MyApp.msi' is not a proper MSI.

***** Log finishing: 2007-12-13 15:59:04 *****

The patch creation process has completed with: 1 Errors and 0 Warnings.
Log file has been created: C:\InstallShield 2008 Projects\MyApp\PatchConfiguration1\Interm\12-13-2007 03-58-56 PM.txt
0 Kudos
bucifalek
Level 3

I found solution.

I am using 4 InstallScript custom action and these functions can be found in Direct Editro in ISInstallScriptAction Table. Normaly all my function had Type value set to 0 (second column). But one of them was set to 65536. I don't know how this happend but when I set the value to 0 patch creation worked normally.
0 Kudos