How to automatically update non-Microsoft software on a number of windows machines?

Solution 1:

WPKG might do what you want. I have my own install / upgrade script for our network (which, by the way, I'm pretty sure manages to silently install 7Zip) but WPKG is probably a better solution now than writing your own script. Instead of messing around with upgrading a machine I simply re-image back to a plain install of Windows and run the install script. If you have users that store stuff on their local machines you could partition their harddrive up, install Windows on the first partition and use the second for their Desktop and My Documents folders, then you can reimage a machine and not wipe people's data.

Solution 2:

This doesn't answer your question directly, but there's an entire website, called AppDeploy.com, devoted to packaging software for installation on multiple PCs. You might also look at InstallPad. I keep meaning to test it and keep not getting around to it. Two others that do a similar job - AppGet and AppSnap.

Edit: These solutions are only going to help you with updating PCs individually. To update all of the PCs remotely see this question: What are the popular (free?) options for application deployment?