A remote viewer is a window in a client application that provides controlled access to messages stored on another computer. This controlled access might be with a modem or other type of slow link. Rather than retrieve a complete selection of available messages every time a user opens a folder, the remote viewer first displays only the headers. The user then selects from the headers which of the messages to display in full. Remote viewer clients can allow their users to delete messages before they are ever downloaded.
The remote folder is not a complete folder implementation; it supports only a subset of folder methods and properties. One of the required methods, IMAPIProp::GetProps, supports the retrieval of the following properties:
PR_ACCESS | PR_ACCESS_LEVEL |
---|---|
PR_CONTENT_COUNT | PR_ASSOC_CONTENT_COUNT |
PR_FOLDER_TYPE | PR_OBJECT_TYPE |
PR_SUBFOLDERS | PR_CREATION_VERSION |
PR_CREATION_TIME | PR_DISPLAY_NAME |
PR_DISPLAY_TYPE |
Remote folders must also support the IMAPIProp::GetPropList, IMAPIContainer::GetContentsTable, and IMAPIFolder::SetMessageStatus methods. Remote folder contents tables typically support the following columns:
Note To mark a particular message header for downloading or deletion, a client calls IMAPIFolder::SetMessageStatus and sets either the MSGSTATUS_REMOTE_DOWNLOAD or MSGSTATUS_REMOTE_DELETE flag.