亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 20000725001.htm

?? C++Builder教學大全
?? HTM
字號:
<HTML>

<HEAD>



<TITLE>C++Builder4.0實現在線接收電子郵件</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>

    <tr> 

      <td> 

        <p align=center><font size=5><strong><b><font size="3"><br>

          <br>

          C++Builder4.0實現在線接收電子郵件</font></b></strong></font></p>

        <p align=right>(文/李東)</p>

        <p class=sfont>&nbsp;&nbsp;&nbsp; 我們在使用163、長通飛華等免費電子郵件的時候,會發現這些電子信箱具有在線收發的功能,即可以通過瀏覽器發送和接收郵件電子郵件。這些功能一般是通過CGI實現的,而CGI技術正在逐漸被ISAPI/NSAPI技術所取代,下面的例子使用C++Builder4.0中的ISAPI/NSAPI實現了電子郵件的在線接收。 

          <br>

          &nbsp;&nbsp;&nbsp;   使用C++Builder4開發Web Server程序是非常簡單的,C++Builder 4的VCL提供了大量的元件和對象,支持Web 

          Server程序的開發。本程序由兩個文件構成,分別為index.htm:接收電子郵件的瀏覽器界面,放到WEB服務器的缺省目錄下(如:C:\Inetpub\wwwroot);ReadMail.dll:在瀏覽器內顯示郵件列表以及指定郵件內容的Web 

          Server Application。這個動態鏈結庫文件放在可執行文件路徑下(如C:\Inetpub\scripts)。用戶在瀏覽器內通過Web 

          Server瀏覽index.htm,輸入主機名、端口(一般是110)、用戶名、口令后,首先會看到用戶的郵件列表,單擊相應的郵件序號即可查看郵件內容。 

        </p>

        <p>首先建立index.htm,其內容如下: <br>

          &lt;html&gt; <br>

          &lt;head&gt; <br>

          &lt;meta http-equiv=&quot;Content-Type&quot; <br>

          content=&quot;text/html; charset=gb_2312-80&quot;&gt; <br>

          &lt;meta name=&quot;GENERATOR&quot; content=&quot;Microsoft FrontPage 

          Express 2.0&quot;&gt; <br>

          &lt;title&gt;郵件查看&lt;/title&gt; <br>

          &lt;/head&gt; <br>

          &lt;body bgcolor=&quot;#FFFFFF&quot;&gt; <br>

          &lt;form action=&quot; /scripts/MailList.dll/MailList&quot; <br>

          method=&quot;POST&quot;&gt; <br>

          &nbsp;&nbsp;&nbsp; &lt;p&gt;主機:&lt;input type=&quot;text&quot; size=&quot;20&quot; 

          name=&quot;Host&quot;&gt;&lt;/p&gt; <br>

          &nbsp;&nbsp;&nbsp; &lt;p&gt;端口:&lt;input type=&quot;text&quot; size=&quot;20&quot; 

          name=&quot;Port&quot;&gt;&lt;/p&gt; <br>

          &nbsp;&nbsp;&nbsp; &lt;p&gt;用戶名:&lt;input type=&quot;text&quot; size=&quot;20&quot; 

          name=&quot;Name&quot;&gt;&lt;/p&gt; <br>

          &nbsp;&nbsp;&nbsp; &lt;p&gt;口令:&lt;input type=&quot;password&quot; size=&quot;20&quot; 

          name=&quot;Code&quot;&gt;&lt;/p&gt; <br>

          &nbsp;&nbsp;&nbsp; &lt;p&gt;&lt;input type=&quot;submit&quot; name=&quot;B1&quot; 

          value=&quot;提交&quot;&gt;&lt;input <br>

          &nbsp;&nbsp;&nbsp; type=&quot;reset&quot; name=&quot;B2&quot; value=&quot;復原&quot;&gt;&lt;/p&gt; 

          <br>

          &lt;/form&gt; <br>

          &lt;/body&gt; <br>

          &lt;/html&gt; 

        <p>下面編寫ReadMail.dll <br>

          在C++Builder中新建一個基于ISAPI的Web Server Application,手動增加 

        <p>NMPOP31,PageProducer1。在Unit1.h頭文件中定義幾個變量: <br>

          AnsiString HostName,HostPort,UserName,UserCode; <br>

          TStrings *URLData; // 接受HTTP請求傳遞的參數 <br>

          bool ConnectFlag; <br>

          int EmailOrder; 

        <p>增加一個路徑為/MailList的動作項,其代碼如下: <br>

          void __fastcall TWebModule1::WebModule1WebActionItem1Action( <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TObject *Sender, TWebRequest *Request, 

          TWebResponse *Response, <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bool &amp;Handled) <br>

          { <br>

          //接受HTTP請求傳遞的參數,從中獲取用主機、端口、戶名和口令 <br>

          URLData = NULL; <br>

          switch(Request-&gt;MethodType) <br>

          &nbsp;&nbsp;&nbsp; {case mtPost: <br>

          &nbsp;&nbsp;&nbsp; URLData = Request-&gt;ContentFields; <br>

          &nbsp;&nbsp;&nbsp; break; <br>

          &nbsp;&nbsp;&nbsp; case mtGet: <br>

          &nbsp;&nbsp;&nbsp; URLData = Request-&gt;QueryFields; <br>

          &nbsp;&nbsp;&nbsp; break; <br>

          &nbsp;&nbsp;&nbsp; } <br>

          HostName = URLData-&gt;Values[&quot;Host&quot;]; <br>

          HostPort = URLData-&gt;Values[&quot;Port&quot;]; <br>

          UserName = URLData-&gt;Values[&quot;Name&quot;]; <br>

          UserCode = URLData-&gt;Values[&quot;Code&quot;]; 

        <p>//下面開始連接郵件服務器 <br>

          NMPOP31-&gt;AttachFilePath=&quot;.&quot;;//存儲郵件路徑為當前路徑 <br>

          NMPOP31-&gt;DeleteOnRead=false;//不刪除服務器上的副本 <br>

          NMPOP31-&gt;ReportLevel=Status_Basic;//Status的詳細程度 <br>

          NMPOP31-&gt;TimeOut=20000;//設定超時 <br>

          NMPOP31-&gt;Host=HostName; <br>

          NMPOP31-&gt;Port=StrToInt(HostPort); <br>

          NMPOP31-&gt;UserID=UserName; <br>

          NMPOP31-&gt;Password=UserCode; <br>

          ConnectFlag=true; <br>

          NMPOP31-&gt;Connect(); 

        <p>//如果連接成功,則制作郵件列表的HTML語句 <br>

          if(ConnectFlag) <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {PageProducer1-&gt;HTMLDoc-&gt;Clear(); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;&lt;html&gt;&lt;body&gt;&quot;); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;郵件個數&quot;+IntToStr(NMPOP31-&gt;MailCount)); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(NMPOP31-&gt;MailCount) 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(int i=1;i&lt;=NMPOP31-&gt;MailCount;i++) 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 

          {PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;&lt;a href='&quot;); <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 

          PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;ReadMail?Mx=&quot;); <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 

          PageProducer1-&gt;HTMLDoc-&gt;Add(IntToStr(i)); <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 

          PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;'&gt;&quot;); <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 

          PageProducer1-&gt;HTMLDoc-&gt;Add(IntToStr(i)); <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 

          PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;&lt;/a&gt;&quot;);} <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;&lt;/body&gt;&lt;/html&gt;&quot;); 

          <br>

          NMPOP31-&gt;Disconnect();} <br>

          else <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {PageProducer1-&gt;HTMLDoc-&gt;Clear(); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;&lt;html&gt;&lt;body&gt;&quot;); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;連接服務器失敗!&quot;); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;&lt;/body&gt;&lt;/html&gt;&quot;);} 

          <br>

          //將郵件列表的HTML語句發送給瀏覽器 <br>

          Response-&gt;Content = PageProducer1-&gt;Content( ); <br>

          } <br>

          //-------------------------------------------------------------- <br>

          以上部分程序完成了顯示郵件服務器郵件列表的功能。接下來,再增加一 <br>

          個路徑為/MailList的動作項,它的功能是顯示指定的郵件內容。 <br>

          void __fastcall TWebModule1::WebModule1WebActionItem2Action( <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TObject *Sender, TWebRequest *Request, 

          TWebResponse *Response, <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bool &amp;Handled) <br>

          { <br>

          //接受HTTP請求傳遞的參數,從中獲取用戶名和口令、欲查看的郵件序號 <br>

          URLData = NULL; <br>

          switch(Request-&gt;MethodType) <br>

          &nbsp;&nbsp;&nbsp; {case mtPost: <br>

          &nbsp;&nbsp;&nbsp; URLData = Request-&gt;ContentFields; <br>

          &nbsp;&nbsp;&nbsp; break; <br>

          &nbsp;&nbsp;&nbsp; case mtGet: <br>

          &nbsp;&nbsp;&nbsp; URLData = Request-&gt;QueryFields; <br>

          &nbsp;&nbsp;&nbsp; break;} <br>

          EmailOrder = StrToInt(URLData-&gt;Values[&quot;Mx&quot;]); 

        <p>//下面開始連接郵件服務器 <br>

          NMPOP31-&gt;AttachFilePath=&quot;.&quot;;//存儲郵件路徑為當前路徑 <br>

          NMPOP31-&gt;DeleteOnRead=false;//不刪除服務器上的副本 <br>

          NMPOP31-&gt;ReportLevel=Status_Basic;//Status的詳細程度 <br>

          NMPOP31-&gt;TimeOut=20000; //設定超時 <br>

          NMPOP31-&gt;Host=HostName; <br>

          NMPOP31-&gt;Port=StrToInt(HostPort); <br>

          NMPOP31-&gt;UserID=UserName; <br>

          NMPOP31-&gt;Password=UserCode; <br>

          ConnectFlag=true; <br>

          NMPOP31-&gt;Connect(); 

        <p>//如果連接成功,打開指定的郵件 <br>

          if(ConnectFlag) <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {PageProducer1-&gt;HTMLDoc-&gt;Clear(); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;&lt;html&gt;&lt;body&gt;&quot;); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;第&quot;+ 

          IntToStr(EmailOrder)+ &quot;個郵件內容:&quot;); <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NMPOP31-&gt;GetMailMessage(EmailOrder); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;AddStrings(NMPOP31-&gt;MailMessage-&gt;Head); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;AddStrings(NMPOP31-&gt;MailMessage-&gt;Body); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;&lt;/body&gt;&lt;/html&gt;&quot;); 

          <br>

          NMPOP31-&gt;Disconnect(); } <br>

          else <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {PageProducer1-&gt;HTMLDoc-&gt;Clear(); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;&lt;html&gt;&lt;body&gt;&quot;); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;連接服務器失敗!&quot;); 

          <br>

          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PageProducer1-&gt;HTMLDoc-&gt;Add(&quot;&lt;/body&gt;&lt;/html&gt;&quot;);} 

          <br>

          //將顯示指定郵件內容的HTML語句發送給瀏覽器 <br>

          Response-&gt;Content = PageProducer1-&gt;Content( ); <br>

          } <br>

          //------------------------------------------------------------ <br>

          最后在NMPOP31的ConnectionFailed事件中加入: <br>

          void __fastcall TWebModule1::NMPOP31ConnectionFailed(TObject *Sender) 

          <br>

          { <br>

          ConnectFlag=false; <br>

          } <br>

          //------------------------------------------------------------ <br>

            編譯完成后,將生成的DLL文件更名為和HTML文件相對應的名稱(如:ReadMail.dll),放在C:Inetpub\scr<br>

          ipts即可。以上程序在Pwin98+PWS4上通過。此外,本程序還有不足之處,比如只能查看內容為純文本格式的郵件, 沒有處理異常的能力。讀者感興趣的話,不妨改進。 

        </p>

      </td>

    </tr>

  </table>

 

</div>

</BODY></HTML>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99综合影院在线| 日韩三级免费观看| 欧美综合视频在线观看| 色999日韩国产欧美一区二区| 成人网在线播放| 成人av电影在线观看| 成人激情综合网站| av成人老司机| 欧美日韩国产a| 欧美一区二区视频在线观看2022| 欧美精品一区二区久久婷婷| 日韩亚洲国产中文字幕欧美| 精品福利一二区| 久久精品人人做人人综合 | 不卡视频在线观看| 欧美日韩1234| 久久精品欧美一区二区三区麻豆 | 欧美日韩成人一区| 精品国产1区二区| 国产精品乱人伦| 一区二区欧美国产| 看片的网站亚洲| 99久久精品一区二区| 欧美三级视频在线观看| 欧美变态口味重另类| 日韩毛片高清在线播放| 免费高清在线一区| 不卡av在线免费观看| 欧美亚洲国产一区二区三区va| 精品久久一二三区| 亚洲国产成人av网| av动漫一区二区| 91麻豆精品国产91久久久久久| 国产精品久久综合| 蜜臀av一区二区在线免费观看| 成人白浆超碰人人人人| 3d成人h动漫网站入口| 成人欧美一区二区三区1314| 奇米精品一区二区三区在线观看一| 成人ar影院免费观看视频| 欧美日韩亚洲综合| 综合欧美一区二区三区| 国产一区二区中文字幕| 欧美精三区欧美精三区| 国产精品国产自产拍高清av| 麻豆精品在线看| 欧美日韩电影在线播放| 亚洲三级小视频| 成人毛片老司机大片| 日韩免费福利电影在线观看| 五月婷婷久久丁香| 欧美日韩综合在线免费观看| 亚洲一卡二卡三卡四卡无卡久久| 懂色av中文字幕一区二区三区 | 久久精品免视看| 国产综合久久久久久久久久久久| 91精品国产综合久久久蜜臀图片| 亚洲亚洲精品在线观看| 欧美午夜精品电影| 五月天精品一区二区三区| 成人av在线一区二区| 国产欧美1区2区3区| 波多野结衣欧美| 最新高清无码专区| 色悠悠久久综合| 夜色激情一区二区| 精品婷婷伊人一区三区三| 亚洲va韩国va欧美va精品 | 亚洲成人手机在线| 日韩欧美第一区| 丁香激情综合五月| 亚洲线精品一区二区三区八戒| 678五月天丁香亚洲综合网| 精品无人区卡一卡二卡三乱码免费卡| 日韩免费视频一区二区| 国产精品123| 亚洲综合另类小说| 久久精品夜色噜噜亚洲a∨| 99这里都是精品| 免费不卡在线视频| 欧美极品美女视频| 欧美精品丝袜中出| 国产馆精品极品| 一个色综合av| 国产丝袜欧美中文另类| 欧美高清你懂得| 91老司机福利 在线| 国产一区二区三区观看| 亚洲激情五月婷婷| 日韩欧美国产小视频| 色999日韩国产欧美一区二区| 国产一二三精品| 国产午夜精品理论片a级大结局| jvid福利写真一区二区三区| 亚洲国产wwwccc36天堂| 亚洲欧洲一区二区三区| 欧美肥胖老妇做爰| zzijzzij亚洲日本少妇熟睡| 韩国在线一区二区| 久久精品国产一区二区三区免费看| 亚洲精品精品亚洲| 国产精品天干天干在观线| 欧美成人高清电影在线| 777a∨成人精品桃花网| 欧美日韩国产一级| 色八戒一区二区三区| 99精品欧美一区| 欧美这里有精品| 欧美日韩一区二区三区四区五区| 一本到不卡免费一区二区| 91丝袜高跟美女视频| 欧洲精品视频在线观看| 日本高清成人免费播放| 欧美伊人精品成人久久综合97 | 亚洲电影欧美电影有声小说| 亚洲一区视频在线| 调教+趴+乳夹+国产+精品| 婷婷国产在线综合| 狠狠色丁香久久婷婷综合_中| 国产一区二区三区黄视频| 国产麻豆精品在线观看| 国产精品1024| 色999日韩国产欧美一区二区| 欧美裸体一区二区三区| 久久久综合精品| 亚洲精品福利视频网站| 美女一区二区久久| 不卡一卡二卡三乱码免费网站| 在线免费一区三区| 欧美成人国产一区二区| 婷婷综合另类小说色区| 色欧美乱欧美15图片| 亚洲女同ⅹxx女同tv| 99久久精品国产麻豆演员表| 日韩欧美久久一区| 青青青伊人色综合久久| 欧美肥妇毛茸茸| 国产一区二区三区久久悠悠色av | 久久无码av三级| 国产成人在线网站| 国产拍揄自揄精品视频麻豆| 懂色av中文字幕一区二区三区| 久久久亚洲综合| 成人app在线| 一区二区理论电影在线观看| 欧美在线小视频| 麻豆国产精品777777在线| 精品免费日韩av| 国产高清成人在线| 久久久久久久久免费| 91精品免费在线观看| 69成人精品免费视频| 亚洲成av人片观看| 91丨porny丨首页| 中文字幕亚洲一区二区va在线| 国产九九视频一区二区三区| 精品久久久久一区| 国产精品91一区二区| 国产亚洲精品bt天堂精选| 国产乱子伦视频一区二区三区| 精品国产一区二区三区不卡| 另类小说图片综合网| 精品国产乱码久久久久久久| 国产精品538一区二区在线| 久久蜜桃av一区精品变态类天堂| 国产一区二区免费看| 国产精品丝袜一区| 一本久久a久久精品亚洲| 五月婷婷综合网| 国产午夜一区二区三区| 97成人超碰视| 蜜桃av一区二区在线观看| 国产精品视频免费看| 91免费观看视频| 天天综合天天做天天综合| 日韩精品一区二区三区老鸭窝| 粉嫩高潮美女一区二区三区| 亚洲一区二区在线免费观看视频| 在线综合+亚洲+欧美中文字幕| 国产在线视视频有精品| 激情图区综合网| 国产精品国产自产拍高清av| 欧美日韩国产123区| 成人午夜电影网站| 视频一区视频二区在线观看| 亚洲国产精品成人综合色在线婷婷| 色婷婷亚洲婷婷| 国产99精品在线观看| 香蕉成人伊视频在线观看| 中文av字幕一区| 日韩丝袜美女视频| 91久久精品网| 丰满亚洲少妇av| 国产九九视频一区二区三区| 亚洲欧美在线观看| 色美美综合视频| 国产精品一卡二| 中文字幕在线不卡一区| 欧美一级一级性生活免费录像| 五月激情综合婷婷|