MSI/MSM Conversion Errors

InstallShield 2020

The table below provides troubleshooting tips for each error that could be encountered while converting an installation package (.msi file) or merge module (.msm file) in the Open MSI/MSM Wizard.

The wizard also returns errors from accessing Windows Installer databases. For more information on those errors, see Build Errors and Warnings. You might receive undocumented, internal errors if the source .msi or .msm package is invalid.

Tip:Before launching the Open MSI/MSM Wizard, validate the package with Orca or Msival2.exe, both part of the Microsoft Windows Installer Platform SDK.

MSI and MSM Conversion Errors

Error Number

Message

Troubleshooting Tips

-6000

Unable to open file

The path to the .msi or .msm file might be invalid.

The file might be open or in use by another program.

The file might have been corrupted or might not be a valid Windows Installer database.

-6001

Unsupported database schema

The Open MSI/MSM Wizard supports databases compatible with schema 30 or later only. To determine the schema of the .msi or .msm file, open it in Orca and on the View menu, click Summary Information. In some cases, you can work around this error simply by changing the Schema field in the Edit Summary Information dialog box.

-7000

Could not create record

If the record already exists, the wizard will not create a duplicate entry found in the file.

-7001

-7002

-7004

Foreign key invalid

The wizard could not create a record because the record referenced by a foreign key in the .msi or .msm database was invalid or missing.

-7005

Unable to set string property

The Open MSI/MSM Wizard could not set a string value, probably because the field was a duplicate in the database file. This error might have resulted from an earlier failure to create a record (error -7000, -7001, -7002, or -7004).

-7006

Unable to set integer property

The Open MSI/MSM Wizard could not set an integer value, probably because the field was a duplicate in the database. This error might have resulted from an earlier failure to create a record (error -7000, -7001, -7002, or -7004).

-7008

Unable to set property

The Open MSI/MSM Wizard could not set a value, probably because the field was a duplicate in the database. This error might have resulted from an earlier failure to create a record (error -7000, -7001, -7002, or -7004).

-7009

Unable to create binary file

The wizard could not extract a binary file, an icon, or an .rtf file from the file and copy it to the new project location.

Delete any existing file in the extraction directory.

Ensure there is enough disk space and that you have the appropriate write privileges for the extraction directory.

-7010

Output path for cab extraction does not exist

The wizard could not extract a .cab file using the path specified.

Instead of typing the output path for the .cab file, click Browse to select the path and then launch the wizard again.

-7011

Cannot delete temporary .cab file

Unable to delete the temporary .cab file after extracting it from the installation package or merge module.

1001

Invalid source MSI database path

Ensure that the path to the .msi database is valid.

1017

End user aborted process

Allow the conversion process to complete.

100001

Unexpected error

The error message lists the function and table name associated with the error.

100002

Unable to extract file from the cabinet

Verify that the source is a valid .msi or .msm database.

200001

No output path was specified

This warning appears if the converter needs to extract binary files from the database tables or cabinet files, but an invalid output path was specified in the Data File Location box on the File Locations panel of the Open MSI/MSI Wizard.

Internal Errors

The following are internal errors. They should not be encountered when importing a valid .msi or .msm database. Before launching the Open MSI/MSM Wizard, validate the package with Orca or Msival2.exe, both part of the Microsoft Windows Installer Platform SDK.

The error message will display the database table, field, and value for which the conversion failed.

Internal Errors

Error Number

Message

Troubleshooting Tips

1002

Invalid target database path

Verify that your default project location path is valid. To verify the path, on the Tools menu, click Options. The default project location path is specified on the File Locations tab.

1003

Failed to open the source MSI/MSM database

Ensure that the database is not locked or open in another application.

1004

Failed to open the target database

Ensure that the project file is not locked or open in another application.

Verify that your default project location path is valid. To verify the path, on the Tools menu, click Options. The default project location path is specified on the File Locations tab.

1006

Failed to obtain table list for the source or target MSI/MSM database

Verify that the source is a valid .msi or .msm database.

1007

Failed to obtain a field

This is generally caused by failure of the MsiRecordGetXXX API. Verify that the source is a valid Windows Installer database.

1009

MsiCreateRecord failure

Ensure that the project file is not locked or open in another application.

1010

Failed to update a field

This is generally caused by failure of the MsiRecordSetXXX API.

Ensure that the project file is not locked or open in another application.

1011

Failed to insert a record into a table

Ensure that the project file is not locked or open in another application.

1012

Failed to extract binary data from the source MSI/MSM database

Delete any existing file in the extraction directory.

Ensure that there is enough disk space and that you have the appropriate write privileges in the output path specified in the Data File Location box on the File Locations panel of the Open MSI/MSI wizard.

1013

Failed to stream a file into the target database

Ensure that the project file is not locked or open in another application.

1014

MsiDatabaseCommit failed

Ensure that the project file is not locked or open in another application.

5001

Failed to resolve a field value

This is generally caused by an unexpected database schema. See troubleshooting notes for error -6001.

5002

Incompatible field type between source and target MSI database

Verify that the source is a valid .msi or .msm database.

See Also