使用MAPI调用outlook发邮件警告问题

guo1018902817 2017-01-19 10:25:55

如图调用MAPI32.dll发送邮件总是出这个警告框,怎么去掉,百度上的方法已经试了,不能用。
上代码:

bool SendMailTest(char* szToEmail, char* szToTitle,char* szToContent)
{
MapiMessage message;
memset(&message, 0, sizeof(message));

message.lpszSubject = szToTitle;
message.nFileCount = 0;
message.lpFiles = NULL;
message.flFlags = MAPI_SENT;
message.ulReserved = 0;
message.lpszNoteText = szToContent;

MapiRecipDesc recv = {0};
recv.ulRecipClass = MAPI_TO;
recv.lpszAddress = "";
recv.lpszName = szToEmail;

message.lpRecips = &recv;
message.nRecipCount = 1;

HINSTANCE hMAPI = LoadLibrary(L"MAPI32.DLL");
if ( hMAPI == NULL )
return false;

ULONG (PASCAL *SendMail)(ULONG, ULONG_PTR, MapiMessage*, FLAGS, ULONG);
(FARPROC&)SendMail = GetProcAddress(hMAPI, ("MAPISendMail"));

if (!SendMail)
{
::FreeLibrary(hMAPI);
return false;
}
int nError = SendMail(0,(ULONG)::GetDesktopWindow(),&message,0,0);

if (nError != SUCCESS_SUCCESS &&
nError != MAPI_USER_ABORT && nError != MAPI_E_LOGIN_FAILURE)
{
::FreeLibrary(hMAPI);
return false;
}
::FreeLibrary(hMAPI);
return true;

}
...全文
265 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ooolinux 2017-01-21
  • 打赏
  • 举报
回复
能分享下吗?
guo1018902817 2017-01-20
  • 打赏
  • 举报
回复
自己已找到解决方案,
guo1018902817 2017-01-19
  • 打赏
  • 举报
回复
看来是没人遇见过这个问题啊。。。。。

1,222

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧