用DELPHI发邮件
       
控件
    IdSMTP1: TIdSMTP;
    IdMessage1: TIdMessage;
代码
    IdSMTP1.Host:='smtp.163.com';
    IdSMTP1.Port:=25;
    IdSMTP1.Username:='发信人名称;
    IdSMTP1.Password:='发信人邮箱密码';
    IdSMTP1.Connect();
    IdMessage1.Body.Clear;
    IdMessage1.Body.Add(信的内容);
    IdMessage1.From.Text:='从哪发的,应该可以邮箱欺骗';
    IdMessage1.Recipients.EMailAddresses:='发到哪个邮箱';
    IdMessage1.Subject:='邮件题目';
    IdSMTP1.AuthenticationType := atLogin;
    IdSMTP1.Authenticate;
    IdSMTP1.Send(IdMessage1);
    IdSMTP1.Disconnect;
end;
重点来了,有朋友试验这个代码说不好用,刚开始我测试也不行,在csdn上用了几百分也没弄明白是怎么回事,
后来一个偶然的机会发现,用新注册的邮箱用这个代码是发不了了,用用过一段时间的邮箱就可以发,新注册用户只能通过web方式发邮件,
估计与在论坛注册的新用户在某个设定时间内发不了帖子是一个道理。

或者:

我写了一个发邮件的函数,包你满意

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes,
  Graphics, Controls, Forms, Dialogs, StdCtrls, IdComponent,
  IdTCPConnection, IdTCPClient, IdMessageClient, IdSMTP, IdBaseComponent,
  IdMessage;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
 type
   TLoginEmailServer=record
      SMTPHost:string;
      SMTPPort:integer;
      Username:string;
      Password:string;
      SmtpAuthType:integer;
   end;

function SendEmail(poSMTPServer:TLoginEmailServer;poBody:Tstrings;psFromEmial,
                   psToEmail,psSubject:string;psContentType:string;
                   CCToEmail:string;poAttachmentPath:TStrings):integer;
var 
   loIdMsgSend: TIdMessage;
   loSMTP: TIdSMTP;
   i:integer; 
begin
   Result:=3;
   loIdMsgSend:=nil;
   loSMTP:=nil; 
   try 
     loIdMsgSend:=TIdMessage.Create(nil);
     loSMTP:=TIdSMTP.Create(nil);
     with loIdMsgSend do
       begin 
        ContentType:=psContentType; 
        From.Text := psFromEmial; 
        ReplyTo.EMailAddresses := psFromEmial; 
        Recipients.EMailAddresses := psToEmail; 
        CCList.EMailAddresses:=CCToEmail; 
        Subject := psSubject; 
        Priority := mpHigh;
        ReceiptRecipient.Text := '';
        Body.Assign(poBody); 
        if Assigned(poAttachmentPath) then 
        begin 
          for i := 0 to poAttachmentPath.Count-1 do    
                  begin
            TIdAttachment.Create(loIdMsgSend.MessageParts,poAttachmentPath.Strings[i]);
          end; 
        end; 
     end; 
     with loSMTP do                    
       begin 
       Host :=poSMTPServer.SMTPHost; 
       Port := poSMTPServer.SMTPPort; 
       if poSMTPServer.SmtpAuthType=1 then 
         AuthenticationType:=atLogin 
       else 
         AuthenticationType:=atNone; 
       Username := poSMTPServer.Username; 
       Password := poSMTPServer.Password; 
       try 
         Connect;    
         Send(loIdMsgSend);       
       except 
         result:=2; 
         exit; 
       end; 
       Result:=0;
       end;
   finally
     loIdMsgSend.Free;
     loSMTP.Free; 
   end;

end;

procedure TForm1.Button1Click(Sender: TObject);
begin
     SendEmail(.........);
end;

end.

procedure TForm1.Button1Click(Sender: TObject);
begin
   try
     IdSMTP1.AuthenticationType:=atLogin; //设置登陆类型
     IdSMTP1.Username:=Edit1.Text; //设置登陆帐号
     IdSMTP1.Password:=Edit2.Text; //设置登陆密码
     IdSMTP1.Host:=Edit3.Text; //设置SMTP地址
     IdSMTP1.Port:=strtoint(Edit4.Text); //设置端口   必须转化为整型
     IdSMTP1.Connect;   //开始连接服务器
   except
     Showmessage('连接失败,请重试!');
     Exit; //连接失败 的话 退出该执行过程 
   end; 
   IdMessage1.Body.Clear;   //先清空上次发送的内容 
   IdMessage1.Subject:=Edit5.Text;   //设置邮件发送的标题 
   IdMessage1.Body.Assign(Memo1.Lines);   //设置邮件发送的主体 
   IdMessage1.From.Address:=Edit6.Text; //设置邮件的发件人   也就是说该邮件来自什么地方 
   IdMessage1.Recipients.EMailAddresses:=Edit7.Text;   //收件人的地址 
   try 
     idSMTP1.Send(IdMessage1); 
     Showmessage('邮件发送成功!');
   except 
     Showmessage('邮件发送失败!');
   end;

end;

--咳,又忘了出处。。老早以前保存的。。。抱歉抱歉

用Delphi发邮件相关推荐

  1. 利用exchangelib快速上手使用python发邮件

    前言 之前一直知道使用python smtp发邮件,但是最近发现一个神器exchangelib,用这个神器发邮件,简直简单的不能再简单了,官方文档在这里 实例 只需要将下面的xxx改成你的信息就可以了 ...

  2. 公司内部exchange2010 下删除误发邮件

    1.Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010 2.get-mailbox | search-mailbox -Search ...

  3. 自动发邮件的程序 c语言,5分钟!教你用C语言发送邮件:附送源码+教学!

    5分钟!教你用C语言发送邮件:附送源码+教学!-1.jpg (10.71 KB, 下载次数: 0) 2018-9-3 02:21 上传 关注<一碳科技>,获取更多知识! 前言 相信年夜家都 ...

  4. 创建oracle发邮件job导致的故障

    前几天创建了个发邮件的存储过程,想把数据库每天的运行情况自动发到邮箱,没想到第二天就出了问题,在dbms/trace目录下产生了大量的xxx_j000_xxx.trc文件,一分钟产生2个.alter日 ...

  5. MDaemon 10.1.2 通过Webclient发邮件时,提示“发邮件时发生错误

    MDaemon 10.1.2 通过Webclient发邮件时,提示"发邮件时发生错误",经查发现服务里边有个Simple mail transfer protocol 服务被启用, ...

  6. 猫猫学iOS(四十五)之常用的小功能比如打电话、打开网址、发邮件、发短信打开其他应用。...

    猫猫分享,必须精品 原创文章,欢迎转载.转载请注明:翟乃玉的博客 地址:http://blog.csdn.net/u013357243?viewmode=contents 简介 iOS中的很多小功能都 ...

  7. vba给服务器发送消息,使用VBA实现发邮件功能

    财务MM经常要给员工发送每月的工资信息,一个个发送实在是太忙了.本文将介绍使用VBA实现工资信息的自动发送.有了这个功能,财务MM只需要把基本数据准备好,然后按下按钮只要选择需要发送的对象.就可以快速 ...

  8. 【知识积累】JavaMail实现发邮件功能

    一.前言 今天闲来没事,想着通过程序来给别人发邮件.于是,上网搜了一下,相应的资料也很多,刚开始完成了邮件的简单发送,后来想如何能发送附件,继续寻找 答案,但是遇到了一个问题是当我使用txt类型作为附 ...

  9. python自动化发送邮件_python接口自动化(三十三)-python自动发邮件总结及实例说明番外篇——下(详解)...

    简介 发邮件前我们需要了解的是邮件是怎么一个形式去发送到对方手上的,通俗点来说就是你写好一封信,然后装进信封,写上地址,贴上邮票,然后就近找个邮局,把信仍进去,其他的就不关心了,只是关心时间,而电子邮 ...

最新文章

  1. cannot resolve symbol
  2. 选择自己用的到的文件编译一个CEGUISample(二)
  3. Oracle存储过程小解
  4. 使用反射代替不断添加的if-else来实现代码的可扩展性
  5. mockito接口_什么是Mockito Extra接口?
  6. 办公自动化-python编写ppt-创建第一页-主标题与内容的编写
  7. java堆排序解决topk问题,详解堆排序解决TopK问题
  8. IOS访问webserver接口
  9. 神舟计算机主板bios,神舟笔记本BIOS设置详解
  10. 原理图和PCB设计流程概述
  11. 安卓计算机切换用户,电脑模拟器小米游戏怎么切换账号
  12. android horizontalscrollview 动画,Android horizontalscrollview使用教程
  13. #1.生活小妙招-联想小新潮7000电脑摄像头打不开
  14. C语言编程常用知识点概论——第一章基本数据类型、运算符
  15. 二手房“反价”越来越多 部分学区房涨价10万
  16. php 不报notice错误,PHP新手NOTICE错误常见解决方法_PHP教程
  17. Python下十进制转换为二进制
  18. 检测站营销系列文章:机动车检测站如何做精益营销?
  19. 计算机无法正常更新,无法完成更新正在撤销更改请不要关闭你的计算机的解决方法...
  20. 《数据结构与算法分析》课程设计——贪吃蛇问题

热门文章

  1. EasyUI Treegrid 树形网格(官网没有提到的实现方式)
  2. 数控系统锁住了怎么解锁解密
  3. go遍历目录对lua进行xxtea加密工具
  4. 轻松搞定PMP考试的计算题(一)必考计算公式汇总
  5. JsonParser、JsonParserFactory、JsonLocation源码翻译
  6. 似然函数的意义与极大似然估计
  7. 【物理应用】基于粒子群优化算法实现瞬变电磁法视电阻率反演附matlab代码
  8. 如何让系统加载自己写的驱动程序?
  9. python 非线性规划
  10. 第六章 戚继光——孤独的将领 -1