我们常常发E-mail邮件,可是你知道我们怎么把我们写的邮件发送给另一方的吗?利用VB.NET网络可以实现这个过程,下面我们就来设计E-mail的发送部分:
1.参数设置
进入Exchange系统,选择新增设置文件后屏幕上会显示所需要的信息服务,选择Internet Mail。把设置文件的名称设为test。屏幕会显示两个选项,您可以选择以Modem方式或以Network 方式连接。笔者所用的是Modem方式;假若您是使Internet专线,就要选择Network 方式。
选择Modem方式后,Exchange会要求我们输入邮件服务器的IP地址。接着将Transform Message的模式设置为Automatic,这样当我们连接到邮件服务器时,新的信息会自动下载到本地端。接下来,将您所使用的E mail地址、全名、口令和下载路径等一一设置好。
2.VB.NET网络程序设计
在Form上加入一个MAPIMessage控件,取名为MAPIMessage1;加入一个MAPISession控件,取名为MAPISession1;并加入三个TextBox控件,取名为Subject、Content和Addr。并在三个TextBox前各加入一个Label,将Caption分别改为标题、内容和地址。
将MAPIMessage1的各项属性设置如下:
- ·DownLoadMail=TRUE;
- ·LogonUI=TRUE;
- ·NewSession=FALSE;
- ·UserName=“发送E mail”。
这里将DownLoadMail设置为TRUE,当程序和邮件服务器***次连接时,会将新的邮件下载到本地端。将LogonUI设置为TRUE,则当您程序中Logon名称输入错误时,系统会显示一个Message Box来让您输入正确的名称。
由于这个程序仅使用一个Session,所以可将NewSession设置成FALSE。如果您有许多Session要建立的话,则将它设置成TRUE。UserName中所填的,是我们在Exchange中所新增的设置文件名称,如果没有填内容的话,系统将会显示一些Message Box请您输入文件。在Form上加入三个按钮,Logon、Logoff和Send,并分别将它们的Caption改为登录、离网和发送。
在 Logon_Click()事件中加入以下程序代码,程序的功能是使我们登录到邮件服务器:
- MAPISession1.SignOn
- MAPIMessage1.SessionID=MAPISession1.SessionID
- sgBox “Your ID is” + Str
- (MAPISession1.SessionID)
其中MAPISession1.SignOn是作登录的动作。在登录时,因为已经将MAPIMessage1控件的DownLoadMail属性设置为TRUE,所以可以在屏幕上看到Message Box,显示系统正在下载邮件。登录成功后,系统会传回一个SessionID,将该ID填入MAPIMessage1的SessionID中,这样就可以利用该Session来传送E mail,同时用Message Box通知用户发送成功。
在Logoff_Click()事件中加入以下程序代码,程序的功能是使我们离开邮件服务器:
- MAPIS1.SignOff
在Send_Click()事件中加入以下程序代码,程序的功能是使我们发送E mail:
- MAPIMessage1.Compose
- MAPIMessage1.RecipDisplayName = Addr.text
- MAPIMessage1.AddressResolveUI = TRUE
- MAPIMessage1.MsgSubject = Subject.text
- MAPIMessage1.MsgNoteText = Content.text
- MAPIMessage1.Send
- MsgBox “您发送成功啦!”
其中Compose命令的主要目的是使您可以改变RecipDisplayName的内容,将所需传送的E mail地址、主题和文章内容分别填入RecipDisplayName、MsgSubject和MsgNoteText,接着用Send命令发送出去,VB.NET网络编程还是很好用的吧。
【编辑推荐】