Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Patch applied, files not updated


7 replies to this topic

ausadmin

ausadmin
  • Full Members
  • 5 posts

Posted 30 December 2010 - 21:46

We have a minor update to our deployed application, and we would like to product a patch to apply the update of 6 key files (executable + 5 dll's) for customers that have already installed our software.

I have read extensively here and on other sites and have now produced a patch .msp file. The ProductCode was not changed. The ProductVersion changed from 2.2.00 to 2.2.01. The ProductName changed from MyProduct 2.2 to MyProduct 2.2a RC.

When I apply the patch to a computer that already has MyProduct 2.2 installed, under Control Panel > Programs I see the Name change to MyProduct 2.2a RC, however, none of the files are updated (executable + DLLs).

I am applying the patch by either double clicking the .msp file, or running msiexec /p patch.msp. The installer then comes up with options to Repair or Remove and I choose repair - I assume this is correct?

Any pointers as to why the files are not being updated? Any suggestions would be appreciated.

Thanks,
Tim

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 03 January 2011 - 12:25

In general: create a log file to see why the files don't get updated, and look out for SELMGR errors. Also make sure the file versions of these files have been incremented.

Typically, the ProductName is also used as the name of the .msi file. But in a minor update you are not allowed to change the .msi file name. So please double check your .msi file name.

ausadmin

ausadmin
  • Full Members
  • 5 posts

Posted 04 January 2011 - 12:25

Stefan,

Thanks for your advice. I could not find anySELMGR errors in the log file. The file versions are bing incremented and the name of the msi file is not changed.

Reading some of the technical information on your website, alerted me to the issue of files being removed. While we don't remove files, we had relocated some MS dlls for sql ce. By leaving these files in the same place it all works nicely.

Thanks again for your help. You site is a wealth of resources when building an installer.

Regards,
Tim

ausadmin

ausadmin
  • Full Members
  • 5 posts

Posted 06 January 2011 - 07:15

Our patch is now working well with the exception that the user gets the repair / remove screen. This is not ideal as it will be a point of confusion for some users, and it should always be a repair for our purposes.

We are using pfw to wrap msiexec and the .msp file to make a single file patch, with the command line options
/p MyProduct2.2a.msp /Lime MyProduct2.2a.log REINSTALL=ALL REINSTALLMODE=omus
- I am wondering if there is a recommended option to msiexec which will just allow it to proceed with the repair, using the .msp file?

Thanks,
Tim

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 06 January 2011 - 17:00

Remove the REINSTALL=ALL REINSTALLMODE=omus part, as it is only needed if your update ships as full .msi, but for .msp
If that doesn't help double check the conditions on the MaintenanceWelcome and PatchWelcome dialogs. They may require some adjustment, especially if your project was created some time ago in a previous version of InstallShield. Tip: create a new test project and look at the default conditions there.

ausadmin

ausadmin
  • Full Members
  • 5 posts

Posted 06 January 2011 - 20:29

Stefan,

Thanks for the quick reply. I previously was not using REINSTALL=ALL REINSTALLMODE=omus on the command line but still got the repair / remove dialog - so this is not the answer.

I was hoping there was a simple way to control this with an option to msiexec - but I guess you are indicating that is not the case?

Failing that I will have to look at those dialogs, but my previous experience has been that messing with the dialog is not trivial and takes lots of time.

Our project was not built with instalshield, it is a simple vs setup project.

Any further advice would be appreciated.

Thanks,
Tim

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 07 January 2011 - 10:55

QUOTE
Our project was not built with instalshield, it is a simple vs setup project.
Oh, sorry, I didn't notice this.

Since VS Setup projects don't support patches by default I guess there's no such thing as a "Patch Welcome" dialog. So this may simply be the intended behaviour.

I don't think you can ajust the dialog conditions in VS (except by post-processing the .msi file). This is one of the many limitations in VS.

BTW Which dialog would you prefer to see?

ausadmin

ausadmin
  • Full Members
  • 5 posts

Posted 07 January 2011 - 20:56

Stefan,

Thanks again for all your advice. In fact we found this was solved quite easily with some investigation of the msiexec command line options. The reference page wasn't all that clear, so we had to do some trial and error. The command line we are now using is
msiexec /p MyProduct.msp /Lime MyProduct.log /qb+

This performs the patch automatically, then simply pops up a complete dialog "MyProduct2.2a Setup completed successfully". The user no longer encounters the Repair / Remove dialog. This was the behaviour we were looking for.

This is all wrapped up with PackageForTheWeb as recommended on your "Windows Installer Updates and Patches" page. We use pfw to prompt the user to continue, giving them details of the old version and new version. Pfw then just executes the above command, there are some progress dialogs, then the next dialog confirms completion. Very nice, and should be easy to use.

I hope this information might be helpful if someone else has this requirement.

Regards,
Tim

Edited by ausadmin, 07 January 2011 - 20:59.