?? 20000726004.htm
字號:
<HTML>
<HEAD>
<TITLE>用C++Builder編寫發送電子郵件軟件</TITLE>
<META content="MSHTML 5.00.2314.1000" name=GENERATOR>
</HEAD>
<BODY aLink=#FF0000 bgColor=#ffffff leftMargin=0 link=#187800 topMargin=0
vLink=#990099>
<div align="center">
<table width="744" border="0" cellspacing="0" cellpadding="0" height="76">
<tr>
<td>
<p align="center"><span class="title"><b><br>
<br>
<font size="3">用C++Builder編寫發送電子郵件軟件</font></b></span></p>
<p align="center"><b> (河北 馮增廣)</b></p>
<p align="left"> 2000年第一期的《電腦報》刊登了題目為《自己動手編寫電子郵件軟件》的文章,文章講述了如何用VB編寫一個簡單的電子郵件發送程序。其實,如果你是一個C++Builder愛好者,完全可以更快、更簡捷地編寫出這類軟件。請聽我下文分解:<br>
與E-mail密切相關的兩個協議是POP3和SMTP,POP3是Post Protocol 3的縮寫,用于從POP3服務器接收電子郵件,SMTP是Simple
Mail Transfer Protocol的縮寫,用于通過SMTP服務器發送電子郵件。這兩個協議本身是很復雜的,但C++Builder從NetManage公司引進了POP、SMTP控件,這樣,我們完全可以不去管那些收發郵件的機理,只要設置好這些控件就可以編出一個C++Builder的發送郵件程序了。下面介紹SMTP控件:<br>
SMTP控件位于控件欄的Internet頁面上,名稱為:NMSMTP。SMTP的主要屬性有:<br>
Host屬性,用來指定SMTP服務器的主機名。<br>
Port屬性,用于指定SMTP服務器的端口號,一般設為25。<br>
UserId屬性,登錄SMTP服務器時用于設置用戶名。<br>
PostMessage屬性,此屬性非常重要,從以下它的內容你就可以看出來了:<br>
FromName 用于指定發件人的名稱。<br>
FromAddress 用于指定發件人的e-mail地址。<br>
LocalProgram 用于指定發件人所使用的郵件客戶程序。<br>
ToAddress 收件人的地址。<br>
Body 郵件正文。<br>
Subject 郵件主題。<br>
SMTP控件的方法:<br>
Connect函數,用于登錄到SMTP服務器,使用此函數前,Host、Port、UserId等屬性必須已設好。<br>
Disconnect函數,用于斷開與SMTP服務器的連接。<br>
SendMail函數,用于向SMTP服務器發送郵件。知道了這些,我們就可以寫程序了。<br>
新建應用程序,將工程名保存為sendmail,在Form1上加入NMSMTP控件,Host屬性添入SMTP服務器的名稱,如:“smtp.yeah.net”,UserId屬性添入你在此郵箱申請的用戶名,其它屬性保持默認值;加入4個Label控件,將其Caption分別設為:“發件人名稱”、“收件人地址”、“郵件主題”和“郵件正文”;加入4個Edit控件,將其Name分別設為:“Name1”、“Address1”、“Subject1”和“Body1”;一個SpeedButton控件,Caption為:“發送”(以上屬性均不含引號),Click事件代碼為:<br>
NMSMTP1->Connect();<br>
NMSMTP1->PostMessageA->FromName=Name1->Text;<br>
NMSMTP1->PostMessageA->FromAddress=″superlink@yeah.net″;<br>
NMSMTP1->PostMessageA->ToAddress->Add(Address1->Text);<br>
NMSMTP1->PostMessageA->Subject=Subject1->Text;<br>
NMSMTP1->PostMessageA->Body->Add(Body1->Text);<br>
NMSMTP1->PostMessageA->LocalProgram=″SendMail″;<br>
NMSMTP1->SendMail();<br>
Application->MessageBoxA(″發送完成!″,″郵件系統″,MB_OK);<br>
NMSMTP1->Disconnect();<br>
完成!有人不禁要問:“就這么簡單?”,的確就這么簡單。不過,NMSMTP控件還有大量的功能沒在此一一列出,同時還有NMPOP3控件可用來編寫接收郵件的程序,如果喜愛C++Builder的朋友感興趣,完全可以寫出象OutLook
Express、FoxMail這樣的電子郵件軟件。<br>
</p>
</td>
</tr>
</table>
</div>
</BODY></HTML>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -