Attached is my presenters copy of the talk. Open it in powerpoint and view the notes on each page. The notes contain everything I intended to say in the talk.
Reading the notes for each slide should help a lot with understanding it.
In the appendix I have a section on uninstalling the software. I used a lot of wmic commands to do that. I still use those for some items, but I've found searching the registry for the uninstall strings and using those provides a much quicker uninstall.
In the registry pick Edit, Find and type in UninstallString. you'll find something like this one for the Creo Agent:
What I presented will work for a small number of users assuming you have full admin rights on all the systems. As things have tightened down, it became more obvious I needed another solution. Our lab uses a product called LANDesk to distribute software updates, patches, etc. I worked with them and they gave me space on their deployment server to stage my installers. I write the installers more or less in the same way described in the presentation and then they make it available to a Active Directory group. I add the users that need to see these apps to the group and then they can self deploy the software. One nice thing is the installer runs as local system, and then when that is done, LANDesk can run another script as the user that deployed the software. I use that script to configure the system for that user, record the user, machine, and the software they deployed, and pop up an html with instructions for the user.
Doing it this way takes all the various admin's out of the loop and ensures that every machine is installed the same way. And it allows me to focus on more important things than doing installations.