小编Pao*_*lia的帖子

在端口 587 (TLS) 上使用 CDO 发送电子邮件时出错

在端口 587(使用 TLS 安全协议的端口)上使用 CDO 发送邮件有什么技巧吗?

\n

这是我的 C++ 代码:

\n
CDO::IMessagePtr iMsg(__uuidof(CDO::Message));\nCDO::IConfigurationPtr iConf = iMsg->GetConfiguration();\nCDO::FieldsPtr iFields;\n_bstr_t empty("");\niConf->Load(CDO::cdoIIS,empty);  // this string constant from import\niFields = iConf->Fields;\n\niFields->Item["https://schemas.microsoft.com/cdo/configuration/smtpserver"]->Value = _variant_t(szServer);\niFields->Item["https://schemas.microsoft.com/cdo/configuration/smtpserverport"]->Value    = _variant_t(587);\niFields->Item["https//schemas.microsoft.com/cdo/configuration/sendusing"]->Value           = 2;\niFields->Item["https//schemas.microsoft.com/cdo/configuration/smtpauthenticate"]->Value = _variant_t(1); // Basic\niFields->Item["https//schemas.microsoft.com/cdo/configuration/sendusername"]->Value    = _variant_t(szUser);\niFields->Item["https//schemas.microsoft.com/cdo/configuration/sendpassword"]->Value     = _variant_t(szPassword);\n\nif(iUseSSLTLS == 2)\n    iFields->Item["https//schemas.microsoft.com/cdo/configuration/sendtls"]->Value = _variant_t(true);\nelse\n    iFields->Item["https//schemas.microsoft.com/cdo/configuration/smtpusessl"]->Value = _variant_t(true);\n\niFields->Update();\netc... etc...\n
Run Code Online (Sandbox Code Playgroud)\n

如果我将此代码与以下内容一起使用smtp.gmail.com

\n
    \n
  • 服务器:smtp.gmail.com,
  • \n
  • 端口:587,
  • \n
  • sndtls = 真,
  • \n
  • 帐户:我的 Gmail 帐户,
  • \n
  • 密码:
  • \n
\n

我得到以下回复:

\n
    \n
  • 代码=8004020e,
  • \n
  • 代码含义 = 无法修改或取消 oggetto che …

c++ email cdo.message

3
推荐指数
1
解决办法
9797
查看次数

标签 统计

c++ ×1

cdo.message ×1

email ×1