Поделиться через


Доступ к хранилищу на удаленном сервере, когда Outlook находится в режиме кэширования Exchange

Область применения: Outlook 2013 | Outlook 2016

В этом разделе содержится пример кода на C++, в котором показано, как использовать флаг MAPI_NO_CACHE для открытия папки или сообщения в хранилище сообщений на удаленном сервере, когда Microsoft Office Outlook находится в режиме кэширования Exchange.

Режим кэширования Exchange позволяет Outlook использовать локальную копию почтового ящика пользователя, в то время как Outlook поддерживает подключение к удаленной копии почтового ящика пользователя на удаленном сервере Exchange Server. Если Outlook работает в режиме кэширования Exchange, по умолчанию все решения MAPI, которые входят в тот же сеанс, также подключаются к кэшированному хранилищу сообщений. Все данные, к которым осуществляется доступ, и внесенные изменения вносятся в локальную копию почтового ящика.

Клиент или поставщик услуг может переопределить подключение к локальному хранилищу сообщений и открыть сообщение или папку в удаленном хранилище, задав бит для MAPI_NO_CACHE в параметре ulFlags при вызове IMsgStore::OpenEntry.

В следующем примере кода показано, как вызвать IMsgStore::OpenEntry с флагом MAPI_NO_CACHE , заданным в параметре ulFlags , чтобы открыть корневую папку в удаленном хранилище сообщений.

HRESULT HrOpenRootFolder ( 
    LPMDB lpMDB, 
    LPMESSAGE* lpRootFolder) 
{ 
    ULONG ulObjType = NULL; 
    HRESULT hRes = lpMDB->OpenEntry( 
        0,// size of entry ID       
        NULL,                                   // Pointer to entry ID 
        NULL,                                   // Use default interface (IMAPIFolder) 
        MAPI_BEST_ACCESS | MAPI_NO_CACHE,       // Flags 
        &ulObjType,
// Output parameter indicates the type of object returned 
        (LPUNKNOWN *) lpRootFolder));           // Pointer to put the opened folder in 
    return hRes; 
 
}

Если вы открыли хранилище сообщений с флагом MDB_ONLINE на удаленном сервере, вам не нужно использовать флаг MAPI_NO_CACHE .

См. также