在一般的訂購系統中(asp那種網頁)
當客戶選擇的某個商品,按下送出後,系統便會自動發送一封mail至uaer的信箱內
信件內容包含此uaer訂購的商品有哪些 and 價位總共是多少....請問...delphi 7中有沒有類示的元件或是程式該如何撰寫
      或 oracle中的Procedure中該如何撰寫???我目前是有查到一本書上面有說怎麼發送mail
可是他不是我要的那種"自動發送",而是拉了text出來,讓user自己輸入要寫的內容,按下發送(有點像是流言板那樣)請大大們幫這個忙謝謝....

解决方案 »

  1.   

    1、创建工程,在窗体中加入IdSMTP1、IdMessage1和IdPOP31(Indy控件标签组)控件各一个。        2、设置     IdSMTP1.Host := 'SMTP.163.com';(我用的是163检试,具体也可选择其它服务器)     IdSMTP1.Username := 'caoyan528';(此处即表示邮箱的帐号名,例如邮箱为:[email protected],则Username即为aaaaaa)     IdSMTP1.Password := 'XXXXXXXX';(此处即为邮箱的密码,如[email protected]邮箱密码为123456,则Password即为123456)。       3、设置IdMessage1.From.Address := '[email protected]';(注意,此处的邮箱地址应在smtp.163.com中存在且就为以上设置的Username),IdMessage1.Recipients.EMailAddresses := ‘[email protected]’(此处表示收件人地址,只要是任何一个存在的邮箱地址即可)   IdMessage1.Subject:= '第一个邮件客户端';(主题)具体源代码如下:procedure TForm1.Button4Click(Sender: TObject);
    var
       filename : String;   tmpEMailItem : TIdEMailAddressItem;
       // tmpEmailAdd :   TIdEmailAddressList;
    begin
       try
         IdSMTP1.Host := 'SMTP.163.com';     IdSMTP1.AuthenticationType := atLogin; //保证登录模式为Login
         IdSMTP1.Username := 'caoyan_528';
         IdSMTP1.Password := 'XXXXXX';
         filename := 'E:\邮件发送程序\2003-12-22_253_04.jpg';    //需要添加的附件文件
         TIdAttachment.Create(IdMessage1.MessageParts,filename);   //添加附件    IdMessage1.From.Address := '[email protected]';
         IdMessage1.Recipients.EMailAddresses:='[email protected]';     tmpEMailItem := IdMessage1.Recipients.Add;   //添加一个地址列表     tmpEMailItem.Text := '[email protected]'; //写一个收件人     idMessage1.BccList.Add.Text := '[email protected]';   //书写多个目标地址,实现群发     idMessage1.BccList.Add.Text := '[email protected]';   //书写多个目标地址,实现群发
         IdMessage1.Subject:= '第一个邮件客户端';
         IdMessage1.Body.Text := Memo1.Text;    //此处为邮件正文     IdMessage1.CharSet := 'gb2312';   //保证附件正文汉字的正常显示
         IdMessage1.Body.Assign(Memo1.Lines);    
         if IdSMTP1.AuthSchemesSupported.IndexOf('LOGIN')>-1 then
         begin
           IdSMTP1.AuthenticationType := atLogin; //连接前要保存为Login   上面己设,此处不必要
           IdSMTP1.Authenticate;
         end;     IdSMTP1.Connect();   //连接SMTP服务器
         IdSMTP1.Authenticate;
         IdSMTP1.Send(IdMessage1);   //向服务器发送邮箱
       finally
         IdSMTP1.Disconnect;   //断开与服务器的连接
       end;
    end;自此,memo1中所写的内容被当作邮件发送了出去。而filename所指的附件也一同被发送到了服务器。
      

  2.   

    to ecjtu5208 :非常感謝您的幫忙....
    請問一下...上述的程式碼是將
    發MAIL的人與收MAIL的人寫死在程式中...
    請問有沒有可以讓他們自行輸入寄件者與收件者的用法(或是可以自行抓取...OUTLOOK的燈入帳號密碼呢??)