Patches - how do I set them up

Got a problem you cannot solve? Try here.
Post Reply
Stephen Ibbs
Posts: 36
Joined: Thu Oct 26, 2006 5:44 am

Patches - how do I set them up

Post by Stephen Ibbs »

I am struggling very much with the concept of patches. I have worked through the Help, but it is more the principle that I need help with.

I have a project for version 1 of my application. Since its launch I have altered the main application EXE, so I want to produce a new version 2 full installation (for new customers), as well as a patch from version 1 to version 2 for existing customers. I created a new directory, copied the version 1 project into it, renamed it version 2, altered the project and build settings to reflect the change in folder and the application version number (but did not touch the GUIDs).

My understanding is that I now change one of the GUIDs, and add the project 1 to the Patch reference window. However surely if I send this out to existing users it will overwrite all the tables in which the users had stored their precious data. Also the installation files would presumably be massive as it would contain the code for both a full install and a patch install.

I must have it wrong.

I then thought that perhaps I have got the whole concept wrong, maybe I need to create a brand new project separate from a full version 2 install in order to patch from version 1 to version 2. This new project would then only contain the files that I want patching - in this example just the main application EXE, leaving the tables alone. However if this is a completely new project I can't see how the product, upgrade and revision codes are automatically kept in synch as your Help indicates in the section 'Patch requirements' (and I can't see the 'Change Revision code automatically' option anyway) .

As you can see I am rather lost. Essentially where I am is:

1) I need to send out a patch installation to existing users containing a new EXE (only) that will install and overwrite their existing files EXE

2) I don't want the patch CD that I send out to existing users to overwrite their existing tables and data

3) I need a full installation CD of version 2 to send out to new customers

What do I do?

Thank you for your patience

Stephen
MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Post by MichaelNesmith »

However surely if I send this out to existing users it will overwrite all the tables in which the users had stored their precious data.
I have no idea what you are talking about here and had asked you to clarify this point before. Can you please explain what this means?
I then thought that perhaps I have got the whole concept wrong, maybe I need to create a brand new project separate from a full version 2 install in order to patch from version 1 to version 2.
No, this is wrong. What you need to do is just save your older *built* setups (no need to save the sources), and add them as patch references to your setup project (the project that built your latest version, as well as all older versions on the field). Then click Build Patch!
Michael Nesmith
Install[b]Aware[/b]
[i]Home of The Next Generation MSI Installer[/i]
Get your free copy today - http://www.installaware.com/
Stephen Ibbs
Posts: 36
Joined: Thu Oct 26, 2006 5:44 am

Post by Stephen Ibbs »

I am sorry if I have been unclear - and I had missed the Build patch option so that answers one of my queries.

My application is a database app, so when they install it they get the EXE and a load of blank tables in which they store their membership records, details of subscriptions etc. My concern was that if I supplied them with a patch update to version 2, it would detect that the empty version 2 table was different to the table on their hard disk - because they have entered records - and over-write it with a brand new blank table.

I think what I had misunderstood was that you simply use the same project. You don't create a new version 2 project. You just preserve the build that has been produced by the previous versions.

I still can't find the Change Revision code automatically option though.

Stephen
MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Post by MichaelNesmith »

I'm not sure if the table issue is resolved for you - but I'll skip that one in this reply.

The option you're asking about is in the Project Options dialog. Click the Project Menu, and then choose the Options menu item. Then choose the Output node and there it is.
Michael Nesmith
Install[b]Aware[/b]
[i]Home of The Next Generation MSI Installer[/i]
Get your free copy today - http://www.installaware.com/
Stephen Ibbs
Posts: 36
Joined: Thu Oct 26, 2006 5:44 am

Post by Stephen Ibbs »

Many thanks Michael. I think it is now starting to make sense. In Patches I used Add to add a reference to the original 1.0 MSI file. I then clicked on Build Patch and eventually a small exe was created in the Patch subfolder. I tried running this file on a separate machine that had the original version 1 application on it and got the error message

"Please locate your original setup sources to continue operation."

I tried navigating to the application folder but this didn't do any good.

What step have I missed out?

Sincerely

Stephen
MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Post by MichaelNesmith »

Please read the help file topic Patching, subtopic Patch Source Resolution. This seems to be the hot topic these days - look in the forum also for related discussions.
Michael Nesmith
Install[b]Aware[/b]
[i]Home of The Next Generation MSI Installer[/i]
Get your free copy today - http://www.installaware.com/
Post Reply