📧 SMTP · 邮件组件分析

godking.smtp   V1.2  ·  2026.08.03
技术基座
CDO.Message
开发语言
aardio
组件形态
COM 封装
核心特性
零依赖 · 一键转网页

1. 核心功能分析

1.1 初始化与自动注册

// 智能创建 CDO.Message 实例,缺失时自动注册内置 cdosys.dll godking.smtp("smtp.163.com", 465, true, "sender@163.com", "account", "password", 30)

1.2 邮件属性

属性读写说明
sender读写实际发件人地址
reply读写回复地址
cc读写抄送
bcc读写密送
subject读写邮件主题
textBody读写纯文本正文(自动 UTF-8)
htmlBody读写HTML 正文(自动 UTF-8)
htmlBodyUrl只写网页 URL → 内联所有资源

1.3 附件与内联资源

方法参数说明
addFile(...)可变参数批量添加附件(自动转绝对路径)
delFile(index)数字(可选)删除指定附件;省略则全部删除
addBodyFile(file, ref)路径 + 引用ID添加内联资源(如图片),供 HTML 引用 cid:xxx

1.4 智能发送

// 收件人支持:字典 / 数组 / 分号字符串,自动发送并返回布尔值 smtp.sendTo({ 张三 = "zhangsan@163.com"; 李四 = "lisi@qq.com" }) smtp.sendTo({"a@xx.com"; "b@xx.com"}) smtp.sendTo("zhangsan@163.com;lisi@qq.com")

2. 技术架构特点

COM 组件封装

基于 Windows 原生 CDO.Message,无需安装第三方库,系统兼容性极佳。

元属性设计

使用 util.metaProperty 统一管理 getter/setter,属性访问自然、代码集中。

自动注册机制

运行时若检测到 CDO 组件缺失,自动从内置资源提取并注册 cdosys.dll

全链路 UTF-8

主题、正文、附件编码统一为 UTF-8,彻底告别乱码困扰。

3. 优点与特点

零依赖部署

Windows 系统自带 CDO 组件,无需安装邮件客户端或库。

HTML 网页直转邮件

htmlBodyUrl 一键抓取网页并内联所有资源,代码量最少,图文即刻呈现。

多格式收件人

字典、数组、字符串三种格式灵活适配不同业务场景。

内联资源支持

addBodyFile 让 HTML 正文轻松引用本地图片(cid 方式)。

附件批量添加

addFile("a.pdf", "b.jpg", ...) 一行代码添加多个附件。

SSL/TLS 支持

适配 163、QQ、Gmail 等主流服务商,安全可靠。

4. 使用便捷性对比

📌 本组件
  • 纯文本邮件:3 行代码
  • HTML 图文邮件:htmlBodyUrl 一行搞定
  • 多附件:addFile("a.pdf","b.jpg")
  • 多收件人:直接传入表或数组
  • 编码处理:自动 UTF-8
📌 传统方式
  • 纯文本邮件:10+ 行 COM 配置
  • HTML 图文邮件:手动转 base64 或添加 cid 引用
  • 多附件:循环添加
  • 多收件人:手动拼接分号字符串
  • 编码处理:需逐项设置

5. 适用场景

📊 企业内部报表/通知 🔐 网站注册验证邮件 ⚠️ 系统监控告警推送 📨 营销邮件批量发送 🤖 自动化运维脚本通知 📄 HTML 邮件模板渲染

6. 注意事项

⚠️ Windows 依赖   CDO.Message 仅限 Windows 系统,跨平台场景建议换用其他方案。
📦 HTML 内嵌大小   htmlBodyUrl 会将所有资源内嵌,注意控制页面资源大小。
🚫 JS 动态内容   邮件客户端大多不支持 JavaScript,请使用纯 HTML+CSS。
🖥️ CDO 版本   Windows 7+ 系统均良好支持。

7. 总结

godking.smtp 是一个 功能完备、接口友好、零依赖 的 Windows SMTP 邮件发送组件。 通过封装 CDO.Message 的复杂配置,提供了极简的 API 设计,尤其以 htmlBodyUrl 方法最具特色—— 将网页直接转为邮件正文,大幅降低 HTML 邮件的开发门槛。

在 aardio 环境下,该组件可作为邮件发送功能的 首选方案,兼顾开发效率与运行稳定性。

报告生成日期:2026年8月4日  ·  作者:光庆  ·  http://chengxu.online