转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> Delphi程序 >> 正文
用 Delphi 做个发信机         ★★★★

用 Delphi 做个发信机

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1490 更新时间:2009/4/23 18:26:13

     hai,大家好,我是梦寻,说来这应算是我的第二次发帖了,这回小梦给大家带来的是一个发信机,不知大家喜不喜欢。如果不满意的话,不要紧,您就狠狠的训梦寻一顿。Ok,如果您认为还可以的话请别忘了投梦寻一票哦,小梦先在这说声谢谢了。^_^

    ok,还是那句老话,转入正题,现在我们就来做一个发信机。

首先我们应在工程中加入以下元件。

组件名 caption           关联的组件
Label1 邮件服务器地址:    Edit1
Label2 帐号名:           Edit2
Label3 端口号:           Edit3
Label4 收信群体服务器地址:Edit4
Label5 收信者名称:       ComboBox1
Label6 信件主题信息:     Edit5
Label7 所要发送信件:     Edit6
Label8 信件附件路径:     ListBox1
Label9 发信显示的信息名:  Edit8
Label10 发信人 Email 地址:Edit9
CheckBox1 穷举式发信 
Button1 开始发信 
Button2 读入字典文件 
Button3 ...               Edit6
Button4 增加/             ListBox
Button5 清除              ListBox
Panel1  
Panel2  
StatusBar1  
OpenDialog1  
NMSMTP1  
ListBox1  

好的,当我们加完了以上所有的组件后,并编好位置后,接下来我们就可以把以下代码以覆盖的形式拷入Delphi 的代码编辑栏中。

unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Psock, NMsmtp, ExtCtrls, ComCtrls;

type
  TForm1 = class(TForm)
    NMSMTP1: TNMSMTP;
    Panel1: TPanel;
    Label9: TLabel;
    Edit8: TEdit;
    Edit9: TEdit;
    Label10: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Edit6: TEdit;
    Edit5: TEdit;
    Button3: TButton;
    Button4: TButton;
    Panel2: TPanel;
    Label1: TLabel;
    Label4: TLabel;
    Edit4: TEdit;
    ComboBox1: TComboBox;
    Button1: TButton;
    Button2: TButton;
    CheckBox1: TCheckBox;
    Label5: TLabel;
    Edit2: TEdit;
    Label2: TLabel;
    Label3: TLabel;
    Edit3: TEdit;
    StatusBar1: TStatusBar;
    OpenDialog1: TOpenDialog;
    ListBox1: TListBox;
    Edit1: TEdit;
    Button5: TButton;
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure NMSMTP1Success(Sender: TObject);
    procedure NMSMTP1Failure(Sender: TObject);
    procedure SendNextmail(var datteinc:integer);
    procedure Button1Click(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure NMSMTP1ConnectionFailed(Sender: TObject);
    procedure NMSMTP1ConnectionRequired(var Handled: Boolean);
    procedure NMSMTP1InvalidHost(var Handled: Boolean);
    procedure FormCreate(Sender: TObject);
    procedure Edit1Change(Sender: TObject);
    procedure Edit2Change(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Edit8KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit9KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit6KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit5KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit4KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure ComboBox1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure helpshow;
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  sendsuc,sendfal,cursennum,totaco:integer;
  connal,startsen:boolean;
implementation

{$R *.DFM}
procedure TForm1.helpshow;
begin
showmessage(
#13+''''┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓''''+#13+
''''┃  在使用本发信机发信时,应先作完以下几项:                     ┃''''+#13+
''''┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫''''+#13+
''''┃    1 在收信地址栏中输入收信群体的地址                        ┃''''+#13+
''''┃      例:收信体为 xxx@yyy.nnn 则应在其中填入:yyy.nnn          ┃''''+#13+
''''┃                                                              ┃''''+#13+
''''┃    2 由于本发信机仅是个范例故而不具备有穷举发信功能,因此您应┃''''+#13+
''''┃      在收信栏中手动输入收信者名或读入一字典文件,格式举例如下┃''''+#13+
''''┃      例,发给 xx1、xx2   则每输完一个,按回车键一次)          ┃''''+#13+
''''┃                                                              ┃''''+#13+
''''┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫''''+#13+
''''┃    本发信机仅做为一个范例,如果您用它来做一些不合法的事情,  ┃''''+#13+
''''┃ 一切后果自行负责.                                            ┃''''+#13+
''''┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛''''+#13+
''''      Copy(R)ight by hhq,2001.02.07     HomePage:www.suye.8u8.com'''');
end;

procedure TForm1.SendNextmail(var datteinc:integer);
begin
if ComboBox1.Items.Count>cursennum then
   begin
   inc(datteinc);
   statusbar1.Panels[0].Text:=''''总发送了(''''+inttostr(sendsuc+sendfal)+'''')次'''';
   statusbar1.Panels[1].Text:=''''成功发送(''''+inttostr(sendsuc)+'''')封'''';
   statusbar1.Panels[2].text:=''''当前正发送:''''+combobox1.Items.Strings[cursennum]+''''@''''+edit4.Text;
   ComboBox1.text:=ComboBox1.items.strings[cursennum];
   inc(cursennum);
   NMSMTP1.PostMessage.Attachments.AddStrings(listbox1.Items);
   NMSMTP1.PostMessage.ToAddress.Add(combobox1.Items.Strings[cursennum]+''''@''''+edit4.Text);
   NMSMTP1.SendMail;
   end else
   begin
   startsen:=false;
   button1.Caption:=''''开始发信'''';
   showmessage(''''请读入新发信进程以便进行信件发送。''''+#13+''''       (按 F1 键可获得帮助信息)'''');
   edit1.Enabled:=true;
   edit2.Enabled:=true;
   edit3.Enabled:=true;
   edit4.Enabled:=true;
   combobox1.Enabled:=true;
   button2.Enabled:=true;
   button1.Enabled:=false;
   edit4.SetFocus;
   end;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
if opendialog1.Execute then
    begin
&n

[1] [2]  下一页


[电脑技术]使用?和*两个通配符迅速批量(搜索)查找文件  [聊天工具]快速又高效 用Email免费发送网络传真__天极Yesky
[系统软件]InstallShield Express for delphi制作安装程序定…  [常用软件]InstallShield Express制作Delphi数据库安装程序
[常用软件]网管工具 用OH协助服务器进行安全监控  [常用软件]留住精彩 用“数码故事”制作DVD光碟
[常用软件]小块头有大智慧 用Nero轻松设计个性化光盘  [常用软件]技高一筹 用Winamp播放影碟
[VB.NET程序]用 VB 实现表单的自动提交  [VB.NET程序]用 VB 打开任意盘(硬盘/U盘/光盘)的文件.
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台