C#调用HmailServer的COM组件API进行用户账号管理及发邮件

在VS中新建一个C#项目后,引入hmailserver的库
在这里插入图片描述
在这里插入图片描述

引入库

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using hMailServer;  /  引入
using System.Net;
using System.Net.Mail;

创建邮箱账号、发邮件

namespace MyDll
{
    public class Email
    {
        // 连上hmailserver
        string USERNAME = "Administrator";
        string PASSWORD = "password";
        string DOMAIN = "test.com";
        string IP = "192.168.0.107";
        int PORT = 587;

		// 创建邮箱账号
        public string addUser(string email, string password)
        {
            Application mailserver = new hMailServer.Application();
            //admin登录验证
            mailserver.Authenticate(USERNAME, PASSWORD);
            // 获取*.com 域
            var domain = mailserver.Domains.ItemByName[DOMAIN];
            var obAccounts = domain.Accounts;
            var obNewAccount = obAccounts.Add();
            obNewAccount.Address = email;
            obNewAccount.Password = password;
            obNewAccount.Active = true;
            obNewAccount.MaxSize = 500; //500mb
            obNewAccount.Save();
            return "success";
        }


		//待发邮件格式
        public class MailInfo
        {
            public string From;
            public string to;
            public string subject;
            public string body;
        }


		//发邮件
        public string sendmail(string eml, string psw, MailInfo mailInfo)
        {
            MailMessage mailObject = new MailMessage();
            //设置发件人
            mailObject.From = new MailAddress(mailInfo.From); //发件人地址
            //设置收件人
            mailObject.To.Add(new MailAddress(mailInfo.to));

            //为了防止乱码,设置主题编码格式
            mailObject.SubjectEncoding = Encoding.UTF8;
            mailObject.Subject = mailInfo.subject;
            //设置正文编码格式
            mailObject.BodyEncoding = Encoding.UTF8;
            mailObject.Body = mailInfo.body;
            //2.创建一个发送邮件的对象
            SmtpClient smtpClient = new SmtpClient();
            smtpClient.Host = IP; //设置服务器ip地址
            smtpClient.Port = PORT; //端口号

            smtpClient.Credentials = new NetworkCredential(eml, psw);
            //发送
            smtpClient.Send(mailObject);
            return "success";
        }
    }
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值