У меня есть приложение, которое создает профиль MAPI для отправки писем/сообщений. Профиль создается правильно в среде Outlook2007, но он не создается должным образом в среде Outlook2007 SP2. И исходный код, и «среда обмена, в которой профиль MAPI/outlook» одинаковы. Профиль создается с помощью подсистемы MAPI.Мое приложение не удалось правильно создать профиль MAPI/Messaging с использованием подсистемы MAPI
Описание приложения: Приложение представляет собой приложение на основе Windows. Служба выполняет COM-приложение. Приложение COM генерирует новый поток для создания нового профиля и отправляет примерное сообщение.
Актуальная проблема: во время создания профиля вызов функции ConfigureMsgService (принадлежащей IMsgServiceAdmin) работает некорректно, даже если он возвращает S_OK. Значение для 5-го параметра «lpProps» функции ConfigureMsgService приведено ниже.
// First, the mailbox name.
ZeroMemory(&rgval[0], sizeof(SPropValue));
rgval[0].ulPropTag = PR_PROFILE_UNRESOLVED_NAME;
rgval[0].Value.lpszA = szMailbox;
// Next, the server name.
ZeroMemory(&rgval[1], sizeof(SPropValue));
rgval[1].ulPropTag = PR_PROFILE_UNRESOLVED_SERVER;
rgval[1].Value.lpszA = szServer;
// For NT Services, need to do this to keep MAPI from
// displaying dialog boxes.
ZeroMemory(&rgval[2], sizeof(SPropValue));
rgval[2].ulPropTag = PR_CONVERSION_PROHIBITED; //As the com application is executed by the NT service, this parameter is specified.
rgval[2].Value.b = TRUE;
Также обратите внимание, что перед вызовом функции ConfigureMsgService, все остальные MAPI вызовы, такие, как MAPIInitialize, MAPIAdminProfiles, CreateProfile, AdminServices, CreateMsgService, GetMsgServiceTable и т.д. сменяются.
Мой вопрос: тот же код работал нормально с средой Outlook 2007, но он не удался в среде Outlook 2007 с пакетом обновления 2 (SP2).
Обратите внимание: 1. Когда тот же код выполняется из автономного приложения, он работал нормально. 2. Код не работал должным образом, если служба выполнена как учетная запись локальной системы или в качестве учетной записи сетевой службы.
- В чем проблема? Я что-то упускаю.
- Есть ли какая-нибудь работа?
Заранее спасибо Saravanan