1 of 1 people found this helpful
Well it all depends on the app. Some apps have api calls (Outlook) that will allow youto at least attempt to shut them down gracefully. I don't know of anything besides killing the app via taskkill. Or if you script something you can popup a scree and indicate that the application will be forcefully closed in X minutes to keep the user from losing anything. I believe we did this for the PNA agent.
I found that to be a problem as well. PSKILL is an option, however if i have an msi and an app is required to be shutdown before an upgrade, i just push it through Group Policy.
It would be great if LDMS could push software before logon, saying that, i'm sure there was a hack on dropped packets that allowed LDMS to install before logon. However i cannot seem to find it, but as i remember that solution was not perfect as all software deloyed by LDMS follow that method if the hack was used.
That was Temple, but I don't think it did it before logon. You could simply uninstall the app, reboot, and install the new app. That is the cleanest way, and I've found provisioning to do this very well since it survive reboots (there are other hacks to survived reboots, but provisioning works a little better.
I've run into this issue several times. The best solution I found is a mix of LANDesk and the RunOnce reg key in XP and Vista. I'm currently deploying Office 2k7 using a LANDesk Windows Script Host package. I've RAR'ed up the Office 2007 install files into a single EXE and wrote a VBS that simply unpacks the RAR'ed files to the directory I want and use "wshshell.regwrite" to create a RUNONCE registry entry which launches the install with the right switches. The "install" from LANDesk is really just the delivery and the file extraction. Once the user reboots whatever commands you put in RUNONCE are initiated before the desktop is even shown so there's no chance of open files causing issues. I also like using the /passive switch for MSI packages in this manner so the users can see what's happening and have a nice little status.
If done right, you can use all the LANDesk bandwidth throttling and delivery goodness to get your installs out to your users without them even knowing. Once the LANDesk package is complete the installation will take place at next logon or reboot. One caveat with this method is you need Admin rights to perform the install or you need to do a RunAs with Admin rights.
I actually wish LANDesk would supply a GUI to modify RUNONCE inside of a Delivery Method. They do have the option to "Install at Next Logon", but it doesn't work the same way. The desktop is visible and, depending on how quick your users are, I've had issues with open files since the distribution package may not have downloaded yet depending on your delivery method.
Hope this helps.
What Dave(Zman) mentions using the software provisioning is a really the best way to do it, we use it for situations like this. You can log the user off, or restart and then kick install off . We have used, as mentioned, the process of killing the process(es) and then kicking it off, but with certain apps it does not always work as expected, again as mentioned.
thanks a lot everybody.
i guess i will code some sort of "inform user to exit app and wait for end of process" vbscript to do the job. killing processes is nice but our users would probably kill me