Error during build: Unable to create patch database

Got a problem you cannot solve? Try here.
ud2008
Posts: 3
Joined: Sun Oct 25, 2009 1:22 pm

Error during build: Unable to create patch database

Postby ud2008 » Thu Jul 05, 2012 1:27 am

I've been trying to create a patch for a program I created, but everytime I try to build it I get the following error:

Error during build: Unable to create patch database [Since MSI 3.0 will block installation of major upgrade patches with sequencing information, creation of such patches is blocked.]

I have searched the forum and have been reading some similar items, but none had the solution for me.

Here's what I did:
- I created a new installer project.
- Added the files that needed to be updated as normal.
- Also changed the version van 2.0.1.0 to 2.0.2.2.
- And at the patches tab of installaware, I have added the previous setup (version 2.0.1.0).
- Then try to build it, but the error appears.

Can someone help me?

BTW, I use installaware 2012

FrancescoT
Site Admin
Posts: 5361
Joined: Sun Aug 22, 2010 4:28 am

Re: Error during build: Unable to create patch database

Postby FrancescoT » Thu Jul 05, 2012 7:19 am

Dear User,

I suspect that very probably the error is caused by an incorrect use of patch project.

- 1. The setup locic you use must be the same across your projects.
To be more clear, the patch project must be the exact copy of the base project.
If for example, in your base project you install File A and File B and with the patch you replace file B, the installation of file A must be still present in your patch project. This could cuse out of sync errors, because MSI database doesn't match and it is reconized by the MSI engine as a different package.

- 2. The project name, Product code, Upgrade code and Version number, must be exactly identical in all patches projects with that ones you used in your base project. This can cause an out of sync error with MSI engine.

- 3. Each patch project must have the reference(in patch refernces) to the full build of any previous version for which the patch is related.

If you have:

- Project 1 (base project)
- Project 2 (patch project)
- Project 3 (patch project)

The patch relation references will be:

- Project 1 - No references
- Project 2 - Reference to Project 1 full build
- Project 3 - Reference to Project 1 and Project 2 full build

If you do not follow the above rules, your patch project will not resolve correctly the binaries differences.

- 4. The "Always Cache Setup Sources (enables easy patching)" control in all your projects build settings, must be checked (not filled). This must be applied in every project (base and patches projects - please refer to IA documentation).

To conclude you should try to:

- Rebuild your base project using the correct settings as for point 4.

- To create a patch project, open you base project and save it in a different folder.

- Open the copied project (the patch project instead), verify that everythings works exactly as the original and check that all the files involved are present. The main script file should now refer to your new folder location.

- Make the required file modifications in the patch project.
Es, replace Fila A with its new version. Leave all the others files as these are in you base project.

- Add the reference to full build patch project in you base project.

- Produce a full build of your patch project.

- Finally produce a patch build.


I hope that the above suggestions could help you with your issue. Please remember that patches should be used for minimal modification only.

Regards
Francesco Toscano
InstallAware Software

White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Publications - http://www.installaware.com/publications-review.htm
InstallAware Help -F1 anywhere in the InstallAware IDE

ud2008
Posts: 3
Joined: Sun Oct 25, 2009 1:22 pm

Re: Error during build: Unable to create patch database

Postby ud2008 » Thu Jul 05, 2012 1:35 pm

Dear FrancescoT, I am kinda confused. What do you mean by:
"in your base project you install File A and File B and with the patch you replace file B, the installation of file A must be still present in your patch project."

Do I need to use my original setup and add the updated exe file to it? Then it just replaces (in the setup file) the first version.

Could you give me a little more example about how to use or create a patch file, because it's my first patch I try to create and I'm still a "beginner" with this.

Thanks.

bokkie
Posts: 767
Joined: Sun Feb 08, 2009 6:30 am

Re: Error during build: Unable to create patch database

Postby bokkie » Thu Jul 05, 2012 2:14 pm

Peter. Smartly dressed, he still resembles an unmade bed.
InstallAware MVP

FrancescoT
Site Admin
Posts: 5361
Joined: Sun Aug 22, 2010 4:28 am

Re: Error during build: Unable to create patch database

Postby FrancescoT » Fri Jul 06, 2012 8:52 am

Dear Ud2008,

what I mean is;

It is good practice to separate different project versions with separate folders.
In your case make a clone of your base project ( ... using save as) and use this copy as your patch project.
Then update the patch project with the modification that you require.

For your reference I have attached a sample project that demostrates patch build.

Hope this helps you.

Regards.
Attachments
Patch.rar
(7.16 MiB) Downloaded 629 times
Francesco Toscano
InstallAware Software

White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Publications - http://www.installaware.com/publications-review.htm
InstallAware Help -F1 anywhere in the InstallAware IDE

ud2008
Posts: 3
Joined: Sun Oct 25, 2009 1:22 pm

Re: Error during build: Unable to create patch database

Postby ud2008 » Fri Jul 06, 2012 11:10 am

Thanks, that was a bit more clear, I've managed to create a patch file, but when I try to install it, I need to select where the original files are installed, how can I set this so the patch does this automatically?

Thanks again

FrancescoT
Site Admin
Posts: 5361
Joined: Sun Aug 22, 2010 4:28 am

Re: Error during build: Unable to create patch database

Postby FrancescoT » Fri Jul 06, 2012 11:23 am

Dear Ud2008,

As I told you with my first reply:

- 4. The "Always Cache Setup Sources (enables easy patching)" control in all your projects build settings, must be checked (not filled). This must be applied in every project (base and patches projects - please refer to IA documentation).


Just verify the above settings and should work (base and patch project must use it).

Regards
Francesco Toscano
InstallAware Software

White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Publications - http://www.installaware.com/publications-review.htm
InstallAware Help -F1 anywhere in the InstallAware IDE


Return to “Technical Support”

Who is online

Users browsing this forum: No registered users and 59 guests