OLE's compound file implementation of IRootStorage provides a way to support saving files in low-memory or low disk-space situations. For information on how this interface behaves, see IRootStorage.
Use the system-supplied implementation of IRootStorage only to support saving files under low memory conditions.
It is possible to call OLE's implementation of IRootStorage::SwitchToFile to do a normal Save As operation to another file. Applications that do so, however, may not be compatible with future generations of COM storage. To avoid this possibility, applications performaing a Save As operation should manually create the second compound file and invoke IStorage::CopyTo. IRootStorage::SwitchToFile should be used only in emergency (low memory or disk space) situations.
IRootStorage; IRootStorage::SwitchToFile