We had a number of powerpoint users complaining that their slide shows were suddenly becoming corrupt even though they had experienced no crash or error message. Just saved as normal but next time they try and open it they get an error:
“The server application source file or item cannot be found or returns an inknown error you may need to re-install the server application.”
We found the cause of this was that network drives were being disconnected and re-connected after the user had opened the slide show.
1. User logs on to machine
2. They immediately open a Powerpoint slide show from an existing network drive and start working on it
3. The user is using a machine on a corporate network which runs a logon script. This script has not completed its tasks and part of the script makes sure all relevant network drives exist by disconnecting and re-connecting the network drives (does this to avoid situation where a rogue network drive mapping has occurred i.e. X is connected to something different than what the company policy stipulates).
4. One of these network drives contains the file the user is working on. The file is now in memory and everything carries on as normal but when the user later saves the file it becomes corrupted without informing the user.
This is a know Bug in Powerpoint – basically Powerpoint cannot handle removable media which the network drive will be seen as.
This problem was particularly prevelant on terminal server sessions where the logon script can take some time to complete.
A workaround is to force the logon script to run before explorer.exe loads using group policy:
Run logon scripts synchronously
User ConfigurationAdministrative TemplatesSystemLogon
Directs the system to wait for logon scripts to finish running before it starts the Windows Explorer interface program and creates the desktop.
If you enable this policy, Windows Explorer does not start until the logon scripts have finished running. This setting assures that logon script processing is complete before the user starts working, but it can delay the appearance of the desktop.
If you disable this policy or do not configure it, the logon scripts and Windows Explorer are not synchronized and can run simultaneously.
This policy appears in the Computer Configuration and User Configuration folders. The policy set in Computer Configuration takes precedence over the policy set in User Configuration.
I’ve also attached a screenshot of the location of this feature:
An alternative workaround is to manage your logon script so that disconnections are not needed. In the example given you could issue a group policy to disable users ability to map drives. You would then only need to connect drives in the logon script: