亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Delphi > 正文

Delphi開發WEBMAIL程序

2019-11-18 18:48:58
字體:
來源:轉載
供稿:網友
常,實現WEBMAIL采用mailto.exe的CGI、在HTML文件中寫入“< form action="mailto:電子郵箱地址" method=post >”語句或者調用WINDOWS API函數。采用WINDOWS API 和在HTML文件中寫入“< form action="mailto:電子郵箱地址" method=post >”語句都要求用戶的瀏覽器裝入EXCHANGE、OutlookEXPRESS、或OUTLOOK等軟件,而且還有一些瀏覽器不支持MAILTO語句。而采用CGI的形式實現WEBMAIL對用戶的瀏覽器沒有要求,但效率不高。CGI技術正在逐漸被ISAPI/NSAPI技術所取代。本文就來討論一下采用ISAPI技術實現WEBMAIL。

  使用Delphi 4開發Web Server程序是非常簡單的,Delphi 4中提供了大量的元件和對象,支持Web Server程序的開發。 下面通過一個例子來介紹如何利用DELPHI開發一個響應用戶輸入的ISAPI的WEBMAIL程序。只有在發送服務器上注冊的用戶才能通過在瀏覽器發送郵件。為了簡單,程序沒有對傳送的數據提供保密。

  首先,在WEB服務器端安裝數據庫引擎dbe,并設置好數據庫別名:yh,指向一個包含用戶名和用戶密碼的數據庫文件user.db。接著建立兩個HTML文件,名字分別為:dl.html,qd.html,放在WEB服務器的缺省目錄下(如:C:INETPUBWWWROOT)。

dl.html的內容如下:

< html >

< head >< title > 發送郵件系統< /title >< /head >

 < body >

  < h1 >發送郵件系統< /h1 >

  < p > 請輸入您的用戶名及密碼。< /p >

  < form method=”post” action="/scr
   < p >用戶名:< input type="text" length=10

     name="username" >

    密碼:< input type="pass
Word"

        length=10 name="password" >< /p >

   < p >< input type="submit" value="確定" >

   < input type="reset" value="清除" >< /p >

  < /form >

< /body >

< /html >

qd.html文件內容如下:

< html >< head >< title >填表< /title >< /head >

 < body >

  < form method=”post” action="feedback" >

    < p >請填入接收郵件地址:toaddress:

   < input type=”text” length=20

    name=”toaddress” >< /p >

    < p >請填入主題。< input type="text"

      length=20 name="subject" >< /p >

    < p >內容:< /p >

    < p >< input type=“textarea”length=40

    width=40 name=”body” >< /p >

    < p >< input type="submit" value="確定" >

  < input type="reset" value="清除" >< /p >

   < /form >

 < /body >

< /html >
 

在DELPHI中新建一個基于ISAPI的WEB SERVER application,手動增加nmsmtp1,query1,pageproducer1。

其中:pageproducer1的property: htmlfile:c:inetpubwww.rootqd.html。nmsmtp1的 property:host(發送郵件服務器的地址。)在這里為smtp.netease.com.。port:25。 全局變量為: sername:string;flag:boolean;

增加一個路徑為/feedback的動作項,其代碼如下:

procedure TWebModule1.WebModule1WebActionItem1

  Action(Sender: TObject;

 Request: TWebRequest; Response:

  TWebResponse; var Handled: Boolean);

Var Count:integer;

   S:string;

Begin

 Query1.close;

 Query1.sql.clear;

 S:=’select count(username) from

   user.db where username=”’;

 S:=s+request.contentfields.values[‘username’]+’”’;

 S:=s+’ and password=”’;

 S:=s+request.contentfields.values[‘psword’]+’”’;

 Query1.sql.add(S);

 Query1.open;

If query1.count=0

then response.content:=’< html >< head >< title >

< /title >< body >用戶名、密碼不正確,請重新輸入

< /body >< /html >’

Else 

  Username:=request.contentfields.values[‘username’];

  Response.content:=pageproducer1.content;

End;



再增加一個路徑為/sendmail 的動作項,

   它的程序代碼如下:

procedure TWebModule1.WebModule1Web

   ActionItem2Action(Sender: TObject;

 Request: TWebRequest; Response:

TWebResponse; var Handled: Boolean);

Var body:string;

Begin

 Flag:=true;

 body:=request.contentfields.values[‘body’];

 Pageproducer1.htmldoc.clear;

 Pageproducer1.htmldoc.add(‘< html >< body >’);

 Nmsmtp1.postmessage.clear;

 Nmsmtp1.postmessage.fromaddress:=username+

 ’@netease.com’;

 Nmsmtp1.postmessage.from:=username;

 Nmsmtp1.postmessage.body.add(body);

 Nmsmtp1.postmessage.toaddress.add

 (request.contentfields.values[‘toaddress’]);

 Nmsmtp1.postmessage.subject:=

 request.contentfields.values[‘subject’];

 Nmsmtp1.connect;

 If flag=true then begin Nmsmtp1.sendmail;

 nmsmtp1.disconntent;end

 pageproducer1.htmldoc.add

 (‘< /body >< /html >’);

 response.content:=pageproducer1.content;



end;  



增加nmsmtp1的事件如下:

procedure TWebModule1.NMSMTP1Connect(Sender: TObject);

begin

 pageproducer1.htmldoc.add

('< p >已經和發送郵件服務器連接< /p >');

end;



procedure TWebModule1.NMSMTP1Connection

Failed(Sender: TObject);

begin

 flag:=false;

 pageproducer1.htmldoc.add

('< p >連接失敗< /P >');

end;



procedure TWebModule1.NMSMTP1ConnectionRequired

(var Handled: Boolean);

begin

 pageproducer1.htmldoc.add('< p >要求進行連接< /p >');

end;





procedure TWebModule1.NMSMTP1Failure(Sender: TObject);

begin

 pageproducer1.htmldoc.add('< p >發送郵件失敗< /p >');

 flag:=false;

end;



procedure TWebModule1.NMSMTP1Header

Incomplete(var handled: Boolean;

 hiType: Integer);

begin

 pageproducer1.htmldoc.add('< p >head不完整< /p >');

 flag:=false;

end;





procedure TWebModule1.NMSMTP1InvalidHost

(var Handled: Boolean);

begin

 pageproducer1.htmldoc.add('< p >

發送郵件服務器地址無效< /p >');

 flag:=false;

end;





procedure TWebModule1.NMSMTP1RecipientNot

Found(Recipient: String);

begin

 pageproducer1.htmldoc.add

('< p >接受郵件地址不正確< /p >');

 flag:=false;

end;





procedure TWebModule1.NMSMTP1Success(

Sender: TObject);

begin

 pageproducer1.htmldoc.add('< p >

成功發送郵件< /p >');

end; 
  將project存為sendmail.dpr,編譯后放到WEB服務器的可執行文件路徑下(如:c:intpubscripts),即可響應HTML文件dl.htm的用戶輸入,并且如果用戶的用戶名及密碼正確則可進入發送郵件的頁面,用戶填寫接受郵件地址及主題、內容后即可發送郵件。此程序在NT SERVER上調試通過。

上一篇:用Delphi發送SMS(手機短消息服務)

下一篇:用Delphi編寫CGI程序(六)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品88a∨| 亚洲影影院av| 亚洲免费av网址| 亚洲国产精品资源| 日本高清视频精品| 欧美在线欧美在线| 日本一区二区在线免费播放| 亚洲美女av黄| www.日本久久久久com.| 欧美在线观看视频| 成人黄色激情网| 精品久久在线播放| 久久免费视频网站| 日韩电影免费观看中文字幕| 精品美女久久久久久免费| 国产成人精品日本亚洲专区61| 国产亚洲精品久久久久久| 久久精品国产精品| 国产精品香蕉av| 性欧美在线看片a免费观看| 色狠狠av一区二区三区香蕉蜜桃| 亚洲第一精品夜夜躁人人爽| 国产精品一二区| 欧美高跟鞋交xxxxhd| 亚洲人线精品午夜| 久久乐国产精品| 亚洲夜晚福利在线观看| 在线观看精品自拍私拍| 日韩亚洲国产中文字幕| 国产精品入口日韩视频大尺度| 国内精品模特av私拍在线观看| 日韩视频免费观看| 欧美激情一区二区三区久久久| 成人黄色中文字幕| 久久久噜噜噜久噜久久| 国产日韩欧美视频在线| 午夜剧场成人观在线视频免费观看| 国产日韩在线免费| 欧洲成人在线视频| 久久久国产一区二区三区| 久久久久国产视频| 日韩大胆人体377p| 亚洲福利在线播放| 亚洲国产精品视频在线观看| 亚洲精品中文字幕有码专区| 91av视频在线观看| 国产精品日韩久久久久| 亚洲成人久久网| 久久久久久久久中文字幕| 91精品国产高清久久久久久91| 国产精品pans私拍| 岛国av一区二区在线在线观看| 日韩av在线不卡| 国产精品久久二区| 综合国产在线视频| 中文字幕久精品免费视频| 久久久久久一区二区三区| 成人亚洲激情网| 精品无人区乱码1区2区3区在线| 8090理伦午夜在线电影| 精品中文字幕视频| 亚洲精品国精品久久99热一| 日韩视频一区在线| 亚洲国产精品久久久久秋霞蜜臀| 国内精久久久久久久久久人| 国产有码在线一区二区视频| 1769国内精品视频在线播放| 久久精品视频免费播放| 日韩成人激情影院| 国产婷婷色综合av蜜臀av| 久久久久国色av免费观看性色| 欧美国产在线视频| 韩国三级日本三级少妇99| 国产精品欧美一区二区三区奶水| 在线电影欧美日韩一区二区私密| 韩国三级电影久久久久久| 亚洲网站在线看| 在线成人中文字幕| 成人性生交xxxxx网站| 成人黄色网免费| 97视频在线观看免费| 欧美性猛交99久久久久99按摩| 日韩av在线高清| 性日韩欧美在线视频| 国产中文欧美精品| 欧美视频中文字幕在线| 成人精品一区二区三区电影免费| 亚洲人成77777在线观看网| 国内精品久久久久伊人av| 欧美高清视频在线观看| 国产精品香蕉在线观看| 国产精品日日做人人爱| 欧美午夜片欧美片在线观看| 两个人的视频www国产精品| 91成人在线视频| 在线观看不卡av| 久久韩剧网电视剧| 欧美午夜美女看片| 国产91精品久久久久| 亚洲欧美日韩成人| 2019中文在线观看| 久久久国产精彩视频美女艺术照福利| 久久噜噜噜精品国产亚洲综合| 亚洲人成网站999久久久综合| 亚洲激情成人网| 欧美成人高清视频| 亚洲男人天堂九九视频| 91高潮精品免费porn| 中文字幕精品在线视频| 中文字幕v亚洲ⅴv天堂| 精品二区三区线观看| 久久精品国产2020观看福利| 成人激情视频免费在线| 欧美中文在线视频| 欧美日韩一区二区在线播放| 亚洲美女免费精品视频在线观看| 日韩成人在线网站| 欧美贵妇videos办公室| 国产精品黄视频| 成人激情视频小说免费下载| 国产精品久久电影观看| 最近2019中文字幕一页二页| 亚洲午夜未删减在线观看| 91av在线播放| 亚洲视屏在线播放| 久久久久国产精品免费| 精品国产美女在线| 亚洲美女在线看| 97在线精品国自产拍中文| 精品中文字幕久久久久久| 欧美日韩中文字幕在线| 黄色成人在线播放| 中文字幕欧美精品日韩中文字幕| 中文字幕亚洲综合| 亚洲欧美精品suv| 国内精品模特av私拍在线观看| 国产拍精品一二三| 久久人人爽人人爽人人片亚洲| 神马久久久久久| 最近2019中文字幕一页二页| 在线精品高清中文字幕| 色婷婷综合久久久久| 欧美成在线视频| 成人写真福利网| 国产精品欧美亚洲777777| 亚洲欧美变态国产另类| 亚洲色无码播放| 日韩高清电影免费观看完整版| 亚洲欧美日韩精品| 国产精品成人久久久久| 在线日韩第一页| 色偷偷88888欧美精品久久久| 欧美日韩福利在线观看| 在线色欧美三级视频| 精品国产一区二区三区在线观看| 国产精品久久久久久久久久久久| 亚洲精品视频在线播放| 欧美在线视频导航| 日韩国产精品一区| 亚洲第一区中文字幕| 午夜精品福利视频| 久久久久久91香蕉国产| 久久精品91久久久久久再现| 亚洲男人第一av网站|