RPA内网smtp发送邮件踩坑记

rpa: uibot需求场景是:客户内网smtp服务器发送邮件,正文需要添加图片。使用uibot发送smtp邮件,uibot对于smtp虽然支持,但是不完善。只能发送普通的html格式的文本内容,不能把图片直接添加到正文内。所以采用第三方语言处理1. 客户提供的smtp服务器,首先要验证权限是否正确。 使用windows自带的telnat Client进行验证 查看另一个博客:《telnet 验证邮箱服务器》https://blog.csdn.net/weixi...
摘要由CSDN通过智能技术生成

rpa: uibot

需求场景是:客户内网smtp服务器发送邮件,正文需要添加图片。

使用uibot发送smtp邮件,uibot对于smtp虽然支持,但是不完善。只能发送普通的html格式的文本内容,不能把图片直接添加到正文内。所以采用第三方语言处理

1. 客户提供的smtp服务器,首先要验证权限是否正确。

        使用windows自带的telnat Client进行验证

       查看另一个博客:《telnet 验证邮箱服务器》https://blog.csdn.net/weixin_41632423/article/details/120266328

2.vba 使用cdo组件发送smtp服务器、

        选择cdo:因为是windows自带组件,无需安装。

        vba发送smtp邮件,依托于微软第三方服务连接我们要使用的smtp服务器,所以用这个方式时要确认网络是否能访问,具体url见代码。

        邮件正文添加图片,大部分的思路都是使用cid(可以自行百度这种方式),但是vba不适用,所以在这里的方案是,将图片用base64 编码,将encode的结果发送到目标邮箱,outlook邮箱是可以自动decode的,其他邮件没有尝试,有兴趣的同事可以自己试试。

话不多说,上干货

        1.发送邮件

'使用CDO发送邮件
Public Function fSendEMailCDO(strTo As String, strSubject As String, strBody As String, Optional strAttachment As String = "", Optional strCC As String = "", Optional strBCC As String = "") As Object
   Dim CDOMail As Variant
   Dim strUser, strPwd As String
   On Error Resume Next                                            '出错后继续执行
   Application.DisplayAlerts = False                               '禁用系统提示

   strUser = "225xxxxx14@qq.com"        '请填写您的邮箱地址
   strPwd = "wu*****veaag"                               '申请开通的授权码
   If strTo = "" Then MsgBox "请输入收件人地址~"
   If strSubject = "" Then MsgBox "请输入主题~"
   If strBody = "" Then MsgBox "请输入正文内容~"

   Set CDOMail = CreateObject("CDO.Message")                       '创建对象
   CDOMail.From = strUser                            
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值