設(shè)計(jì)E-mail的接發(fā)送收局部
發(fā)表時(shí)間:2024-05-24 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]在VB 6菜單上點(diǎn)擊“工程/部件...”,彈出“部件”對(duì)話框,在對(duì)話框的控件卡中選中Microsoft MAPI Controls 6.0控件,點(diǎn)擊“確定”按鈕后,工具箱上增加了MAPIMessage和MAPISession兩個(gè)圖標(biāo)。 在Form上加入一個(gè)MAPIMessage控件,取名為MAPI...
在VB 6菜單上點(diǎn)擊“工程/部件...”,彈出“部件”對(duì)話框,在對(duì)話框的控件卡中選中Microsoft MAPI Controls 6.0控件,點(diǎn)擊“確定”按鈕后,工具箱上增加了MAPIMessage和MAPISession兩個(gè)圖標(biāo)。
在Form上加入一個(gè)MAPIMessage控件,取名為MAPIMessage1;再加入一個(gè)MAPISession控件,取名為MAPISession1;再加入三個(gè)TextBox控件,分別取名為Subject、Content和Indexno, 將它們的Caption分別改為郵件標(biāo)題、郵件內(nèi)容和郵件索引號(hào);在TextBox前各加入一個(gè)Label控件,將Caption分別改為標(biāo)題、內(nèi)容和索引號(hào)。
將MAPIMessage1的各項(xiàng)屬性設(shè)置如下:
●DownLoadMail=TRUE;
●LogonUI=TRUE;
●NewSession=FALSE;
●UserName=“接收Email”。
在Form上加入一個(gè)按鈕(Getmail),將其Caption改為取郵件。
在 Getmail_Click()事件中加入以下程序代碼,程序的功能是使我們接收Email。
MAPIMessage1.Fetch
Form1.Caption=MAPIMessage1.MsgCount
MAPIMessage1.MsgIndex=CINT(Indexno.text)
Subject.Text = MAPIMessage1.MsgNoteText
Content.Text = MAPIMessage1.MsgSubject
其中Fetch命令用來(lái)將信件抓到系統(tǒng)存儲(chǔ)器的inbuffer中。我們將信件抓回來(lái)后,可以通過(guò)MsgCount屬性知道信件數(shù)量,接著可以用MsgIndex設(shè)置要看哪一封信件的內(nèi)容、標(biāo)題等。
設(shè)計(jì)E-mail的發(fā)送部分
1.參數(shù)設(shè)置
進(jìn)入Exchange系統(tǒng),選擇新增設(shè)置文件后屏幕上會(huì)顯示所需要的信息服務(wù),選擇Internet Mail。
把設(shè)置文件的名稱(chēng)設(shè)為test。屏幕會(huì)顯示兩個(gè)選項(xiàng),您可以選擇以Modem方式或以Network 方式連接。筆者所用的是Modem方式;假若您是使Internet專(zhuān)線,就要選擇Network 方式。
選擇Modem方式后,Exchange會(huì)要求我們輸入郵件服務(wù)器的IP地址。接著將Transform Message的模式設(shè)置為Automatic,這樣當(dāng)我們連接到郵件服務(wù)器時(shí),新的信息會(huì)自動(dòng)下載到本地端。接下來(lái),將您所使用的Email地址、全名、口令和下載路徑等一一設(shè)置好。
2.程序設(shè)計(jì)
在Form上加入一個(gè)MAPIMessage控件,取名為MAPIMessage1;加入一個(gè)MAPISession控件,取名為MAPISession1;并加入三個(gè)TextBox控件,取名為Subject、Content和Addr。并在三個(gè)TextBox前各加入一個(gè)Label,將Caption分別改為標(biāo)題、內(nèi)容和地址。
將MAPIMessage1的各項(xiàng)屬性設(shè)置如下:
●DownLoadMail=TRUE;
●LogonUI=TRUE;
●NewSession=FALSE;
●UserName=“發(fā)送Email”。
這里將DownLoadMail設(shè)置為T(mén)RUE,當(dāng)程序和郵件服務(wù)器第一次連接時(shí),會(huì)將新的郵件下載到本地端。將LogonUI設(shè)置為T(mén)RUE,則當(dāng)您程序中Logon名稱(chēng)輸入錯(cuò)誤時(shí),系統(tǒng)會(huì)顯示一個(gè)Message Box來(lái)讓您輸入正確的名稱(chēng)。
由于這個(gè)程序僅使用一個(gè)Session,所以可將NewSession設(shè)置成FALSE。如果您有許多Session要建立的話,則將它設(shè)置成TRUE。UserName中所填的,是我們?cè)贓xchange中所新增的設(shè)置文件名稱(chēng),如果沒(méi)有填內(nèi)容的話,系統(tǒng)將會(huì)顯示一些Message Box請(qǐng)您輸入文件。
在Form上加入三個(gè)按鈕,Logon、Logoff和Send,并分別將它們的Caption改為登錄、離網(wǎng)和發(fā)送。
在 Logon_Click()事件中加入以下程序代碼,程序的功能是使我們登錄到郵件服務(wù)器:
MAPISession1.SignOn
MAPIMessage1.SessionID=MAPISession1.SessionID
sgBox “Your ID is” + Str
(MAPISession1.SessionID)
其中MAPISession1.SignOn是作登錄的動(dòng)作。在登錄時(shí),因?yàn)橐呀?jīng)將MAPIMessage1控件的DownLoadMail屬性設(shè)置為T(mén)RUE,所以可以在屏幕上看到Message Box,顯示系統(tǒng)正在下載郵件。登錄成功后,系統(tǒng)會(huì)傳回一個(gè)SessionID,將該ID填入MAPIMessage1的SessionID中,這樣就可以利用該Session來(lái)傳送Email,同時(shí)用Message Box通知用戶(hù)發(fā)送成功。
在Logoff_Click()事件中加入以下程序代碼,程序的功能是使我們離開(kāi)郵件服務(wù)器:
MAPIS1.SignOff
在Send_Click()事件中加入以下程序代碼,程序的功能是使我們發(fā)送Email:
MAPIMessage1.Compose
MAPIMessage1.RecipDisplayName = Addr.text
MAPIMessage1.AddressResolveUI = TRUE
MAPIMessage1.MsgSubject = Subject.text
MAPIMessage1.MsgNoteText = Content.text
MAPIMessage1.Send
MsgBox “您發(fā)送成功啦!”
其中Compose命令的主要目的是使您可以改變RecipDisplayName的內(nèi)容,將所需傳送的Email地址、主題和文章內(nèi)容分別填入RecipDisplayName、MsgSubject和MsgNoteText,接著用Send命令發(fā)送出去。