- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Patch fails to install: Cannot delete table that doesn't exist. Table: MsiPackageCertificate
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Patch fails to install: Cannot delete table that doesn't exist. Table: MsiPackageCertificate
We are using patches for our main product. MSI has patch design.
The patches are small, mostly just file updates. And they are cumulative meaning that newer patch contains all changed files compared to the RTM major version.
The RTM release (full MSI installer) initially signed the setup using a file certificate.
We released 5 patches to the main application already which for each patch contain the same files as earlier patched.
So we can install patch5 on top of RTM release, RTM release+ patch1, etc etc.
But in the past, patch 6 needed to be changed: the company policy changed. We were not allowed to use file certificates and have to sign the setup.exe externally. So for patch 6 we did not sign the exe in the project anymore. Unchecked the signing in the MSI project.
Nothing else changed. We could install patch6 over any released previous (patched) version version.
Now we have to create patch7 which also does not sign anymore. But when we try to install patch7 over patch6, we get this error:
DEBUG: Error 2253: Database: Transform: Cannot delete table that doesn't exist. Table: MsiPackageCertificate
1: 2253 2: 3: MsiPackageCertificate
This update package could not be opened. Contact the application vendor to verify that this is a valid Windows Installer update package.
RTMToSU6FULL
MSI (c) (18:3C) [16:05:02:907]: Product: Agfa IMPAX RIS 6.4.2 - Update '{FF085312-F260-4B3C-BECD-29C17AF271E0}' could not be installed. Error code 1636. Additional information is available in the log file D:\Users\axnco\AppData\Local\Temp\MSIbfdf4.LOG.
If we install patch7 on RTM or on RTM+patch5, no issues. But patch7 will not install when patch 6 is installed. Having the error described above.
How to fix this? How can we make this error ignored? It seems that this table was removed in patch6 (seems obvious as we did not sign the patch with the file certificate anymore starting with patch6). But patch7 seems to try to delete the table again after patch6 already deleted it.
Can we manually add this table to it is not resulting in the given error?
Or can we make a custom action to be able to skip this check?
It seems that having patch6 installed we are stuck and are unable to create any patches after that.
Extra info:
Full product release MSI is RTM version.
All patches use RTM version as base version. So a patch does not require older patches to be installed. No patch sequence.
The patch only changes the most right version number
RTM release is 6.4.2.0
patch 1 is 6.4.2.1 etc etc
Why is the signing in the project saved into a table named MsiPackageCertificate and present when installing the product? Why is the table deleted when siging was removed from a patch? And why does the installer abort when this internal table is tried to be deleted but is not present?
(deleting stuff which is already deleted would IMHO result in a warning and not a blocking error).