Проблема при отправке сообщения MAPI

Я пытаюсь отправить сообщение с использованием Extended MAPI, но получаю сообщение об ошибке E_ACCESSDENIED. Я использую класс C #, который вызывает cpp dll. Я могу проверять почту и удалять сообщения, но не отправлять. Ниже C #, который я использую для создания сообщения:

using (MAPIMessage message = new MAPIMessage())
{
if (message.Create(this))
{
message.SetSender(send.SenderName, send.SenderAddress);
message.SetSubject(send.Subject);
message.SetBody(send.Message);
message.AddRecipient(send.RecipientAddress);
//  High: Add attachments

#if DEBUG
ConfirmMessageCreation(send, message);
#endif

Logger.Log("Message created...\nSending message...", Verbose.LogEverything);
result = message.Send();
}

else
Logger.Log("There was a problem creating the email.", Verbose.LogImportant);
}

Фактический cpp, который отправляет сообщение, выглядит следующим образом:

BOOL MessageSend(CMAPIMessage* pMessage)
{
return pMessage->Send();
}

BOOL CMAPIMessage::Send()
{
HRESULT result = Message()->SubmitMessage(0);

if(Message() && result==S_OK)
{
Close();
return TRUE;
}
return FALSE;
}

Несмотря на то, что я правильно вошел в систему и могу проверить или удалить сообщения, я получаю ошибку E_ACCESSDENIED при вызове Send (). Любое понимание этого вопроса будет с благодарностью.

1

Решение

Свойства, связанные с отправителем, должны быть удалены.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]