Another great Windows XP feature with another great set of problems: Offline Files. If you have a laptop or unreliable inter-site connectivity, then you know of the necessity of keeping a local copy of your shared files to make them available at all times. The Offline Files feature automatically keeps track of which files need to be synchronized for you, making that offline experience very slick.
Try to do this in a multi-user environment, however, and it will blow up spectacularly. The most common symptoms appear when double clicking a document icon in offline mode. Windows loads the program associated with that type of document, and that program instantly crashes or throws a file error. This happens any time more than one user tries to use the same file offline on the same computer.
Here are some of the most common Offline Files error messages:
- Windows Picture and Fax Viewer – “No preview available.”
- Notepad – “Access is denied.”
- Wordpad – “Failed to open document.”
- Word – “This file could not be found.”
- IE8 – “Internet Explorer cannot display the webpage”
- Google Chrome – “This webpage is not found.”
- Adobe Acrobat – “There was an error opening this document.”
Obviously, those errors do not point to the actual problem. Notepad’s error is somewhat indicative of the fact that Windows is not allowing the user to read the file, even though the user has appropriate permissions to do so. To troubleshoot this error, I had to look much deeper.
Searches on Google revealed that this problem is completely unresolved and missing from the Microsoft knowledge base, despite years of user complaints. In Windows XP Service Pack 2, Microsoft fixed some issues related to synchronization in multi-user environments, but failed to address the most common cause of the access errors.
After a great deal of experimentation, I figured out some of the undocumented quirks of Offline Files and found a partial workaround. As far as I know, this is the first time anyone has made this information available on the web.
Permissions in the Client Side Cache
Windows XP does not copy the Access Control List (ACL) of any file during synchronization. As a result, sometimes access is given, and sometimes not. Based on my observations, none of these actions will affect who can access Offline Files:
- Changing NTFS permissions.
- Changing the file owner.
- Changing file sharing permissions.
- Changing the share root, or folder depth.
- Changing Offline Files settings.
- Synchronizing files.
I found only two conditions in which Windows XP will cache permissions for the current user regardless of any other circumstances:
- User who clicks the file command, “Make Available Offline,” while in online mode.
- User who accesses a file that is already made available, while in online mode.
When I say “accesses a file”, it can be a variety of actions that cause the permissions to be cached. Opening the file always seems to work, as does viewing the file’s properties. For certain types of files, simply highlighting the file’s icon in Explorer can cause the permissions to be cached, and for images it will happen when thumbnails are generated. Deleting the Thumbs.db file in a folder may be a valid strategy for forcing the offline permissions to update for a small folder of images. After the permissions are cached for the second user of a file, both users will be able to use that file normally in offline mode.
This workaround is not viable for large file sets or situations where newly created files need to be synchronized automatically. The Windows XP file synchronization system is fundamentally flawed because it does not cache the ACLs or even the permissions of the current user.
A Tip for Troubleshooting
To see the permissions information for your offline files, follow these steps:
- Click the Tools menu in any Explorer window, such as My Computer.
- Click Folder Options. Alternatively, go to the Folder Options Control Panel.
- Click the Offline Files tab.
- Click the View Files button. You should now see the Offline Files Folder.
- Click the View menu.
- Click Details. You should now see a list of files, including a column titled Access.
Based on my observations, “User R/W” means that the current user is allowed to use the file. “Other R/W” means permissions are cached for someone other than the current user. If the current user is not an administrator, then you may be unable to see such files. “User R/W, Other R/W” means you and at least one other person can access the file in offline mode.
I am only the latest person in a chorus of disgruntled users and administrators who have been unable to resolve the multi-user failings of Offline Files. Please leave a comment if you know of any new patches or workarounds for this problem.
Update 20 February 2011
In case you need to acquire the “User R/W” permission for a large set of files, it is not necessary to open each one individually. Browse to the shared folder, highlight all of the needed files, then open the properties for the selection. As soon as the properties dialog box appears, you will have offline access to all of the selected files. This does not work in the Offline Files Folder itself, even when online. You will have to use the shared folder.
Regarding the list of circumstances where permissions will get cached, there are actually three of them. If new files are added to the shared folder from a different computer and then synchronized to the local offline files cache, the user who initiated the synchronization will be the only person who has access to those new files offline.