Hi Ben, Ben Hartmann wrote: > Hi there, > > I don't really understand the way wpkg decides to skip (or bypass) an > installation. > > I've got the following scenario: > I've rewritten the PDFCreator.xml to get rid of the old msi package and > use the newest install exe. Now I want to roll this out to our office > machines. There is only one little problem... Some of the machines are > already manual updated to the newest version so I want wpkg to detect > this and skip the upgrade process. Sadly, I wasn't able to get this > working in our testing environment. > > Is there a way to solve this? As soon as you increment the package revision attribute WPKG will run the upgrade commands. If you do not specify any upgrade commands nothing will be executed - however this will prevent machines running the old version to upgrade properly. So the best way to execute your upgrade is to make sure your upgrade commands work properly no matter if the old version is there or if the new version is already installed. Most installers will anyway simply terminate with a clearly defined code if the software is already installed. So it does not really matter how often you run the setup process. If PDFCreator is behaving differently you might need to write some scripts which are handling each case properly like - detect currently installed version - if new version is already there exit with code 0 (success) - if old version is installed run some install commands and then exit As I wrote usually you can run the installer in both cases so the check is superfluous. WPKG skips the installation/upgrade only in a very limited amount of cases: - Package has been processes (installed/upgraded) already during this WPKG session - If execute attribute is not "always" AND the package has not been installed before (first-time-installation) and the checks already yield true on the system. e.g. if the software is already installed on the system before WPKT takes "control" on the software package. - The package with execute=once attribute has been installed already once AND no revision change has been done (no matter if it is still installed correctly) - The package without execute=once attribute which is installed properly (verified by checks) and no revision change has been done. br, Rainer |