Offline Files for Dummies
One of the more subtle changes in Windows Vista is the way the operating system manages Offline Files. Offline files, for those who don't know is the ability to work with files that reside on a networked server even though the machine is not connected to the network.
Wasn't this in XP?
This feature was first available in Windows 2000 and then again in XP. Based upon feedback from customers, the version in Vista is completely redesigned. Some of the enhancements made were seamless transition from an online to offline state and back again and better synchronisation. In XP, transition from offline to online modes was seamless but when coming back from offline to online was a bit of a nightmare.
When reconnecting to the network I used to get an annoying popup telling me that the server was available for reconnection. I would then need to close all open applications that were using offline versions of the files and start synchronisation. This was quite a pain to say the least, especially when I was jumping between meetings where some of the locations had wireless available and others not.
Now in Vista when I regain connectivity to the network, Vista subtly puts me into online mode and synchronisation slips into gear all in the background. All offline changes to files are pushed to the server and likewise any changes to the server versions are pulled to the local cache. If a file has a conflict with versions, it will simply remain in offline mode so the user can continue to make changes and the conflicting file will be flagged in the synchronisation center. I'm then free to resolve the conflict when I feel like it - the system tray lets me know when I need to do something.
Share Level Sync
Something even more even more subtle than the changes I've mentioned above is share level synchronisation. Before, in XP, if one share was unavailable the whole shooting match went into offline mode - even if other server shares were available - this meant that synchronisation was very sensitive to share downtime and gave an unreliable experience.
In Vista the synchronisation occurs at the share level which means that shares can be offline or online independant of one another. All this is managed behind the scenes by the synchronisation center and results in seamless synchronisation of all relationships.
Developing with Sync Center (ISV's check this out!)