Hi Chris, Chris Wilcox wrote: > That gets me to my question - the commercial system I use will never > initiate a package installation if the local and network ini file says > that the package is already installed. With WPKG, it seems you MUST > specifiy conditions to prevent this occuring? This is partially true. If a package is "new" and has never been applied to a host (ie the package does not exist within local "%systemroot%\systrem32\wpkg.xml" then WPKG will first run the defined checks to check if the package is already installed. If it is installed, then WPKG will just add this information to wpkg.xml and no installation command is performed at all. But if the checks yield that the software is not installed yet (or there are no checks defined at all) then WPKG will run the install commands and then re-execute the checks to see if the package is now properly installed. One main difference to your "commercial system" I see is that WPKG is able to re-run the checks on each run to verify that the package is still properly installed (assuming that proper checks are defined). So it is true that you must specify a decent set of checks to allow WPKG to detect that a package is already installed in case the package is already there when WPKG is first run. If these checks do not exist WPKG will run the installation to make sure the package is installed. Assuring proper state of the target machine(s) is one of the most important attributes of a software deployment system. Such a system is quite useless if it allows the state to report a working installation without verifying it. This could leave a client in a broken state without even giving any notification to the administrator. So if WPKG reports that the package is properly installed then it IS VERIFIED AND PROPERLY INSTALLED. One more word about specifying no checks at all. This means WPKG will install the package and then assume it's installed (without further verification on next run). WPKG in this case only re-executes a command if the package version is increased (upgrade) or the package is removed from the profile (uninstall). > Most of the software I > use is educational stuff and is not listed in any of the WPKG silent > installer pages - it can often be quite difficult to work out what > condition syntax to use to prevent installs repeating at each > workstation boot - MSI's handle this a little better as they don't > normally repeat the whole install, but many exe based installations > insist on re-installing even if the app is already on. No problem here. I use some educational sites as well where specific educational software is deployed. It's true that most of these installers are totally useless and do not allow silent installations. Most of them can be worked around by installing them on a reference system (or virtual machine) and just re-package them with 7-zip self extractor or similar. Then crate a small batch script whcih is silently extracting it, registering some DLL or adding registry keys. Removing is simple: Just delete the program directory. The checks of course cannot refer to uninstall entries then but instead a simple check on file existence (main program binary) or file version are decent checks. As written above adding a decent check for file existence (main program binary) prevents WPKG to re-install the program even if WPKG is run for the first time. WPKG will log that it starts installation and then runs the checks to find that the application is already on the system. No re-installation will be done. > Am I missing something obvious here? Should WPKG try to repeat installs > at every boot if the package does not have any condition syntax? Yes, you're missing something. As written above WPKG will install the package only once if there are no checks at all. If there are correct checks defined then even the first installation can be skipped if the application is already on the system. br, Rainer |