vc编写电子邮件程序sen

上传人:hs****ma 文档编号:494682949 上传时间:2023-03-17 格式:DOCX 页数:27 大小:68.77KB
返回 下载 相关 举报
vc编写电子邮件程序sen_第1页
第1页 / 共27页
vc编写电子邮件程序sen_第2页
第2页 / 共27页
vc编写电子邮件程序sen_第3页
第3页 / 共27页
vc编写电子邮件程序sen_第4页
第4页 / 共27页
vc编写电子邮件程序sen_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《vc编写电子邮件程序sen》由会员分享,可在线阅读,更多相关《vc编写电子邮件程序sen(27页珍藏版)》请在金锄头文库上搜索。

1、VC+编写电电子邮件件程序 m时间间:20008-08-27作者:佚名 编辑:本站 点击:6335 评论VC+编写电电子邮件件程序 一、概述述- 本文文主要讲讲述如何何使用VVisuual C+用MAAPI编编写E-maiil程序序。MAAPI是是包含在在Winndowws之中中的,因此不需需要安装装其他额额外的部部件。MMAPII有以下下三种形形式:SMAPPI,SSimpple MAPPI,简简单的MMAPIICMC,CCommmon Messsaggingg Caallss,一般般通讯调调用完整的MMAPII- SMMAPII和CMMC都包包含在完完整的MMAPII中,当当用户想想执行一

2、一些高级级操作,比比如编写写自己的的E-mmaill服务器器的时候候,必须使用用完整的的MAPPI。本本文主要要阐述如如何编写写能够收收发电子子邮件的的程序,因因此使用用SMAAPI就就足够了了。二、编写写电子邮邮件程序序3-1 初始化化MAPPI- 要使使用MAAPI,必必须首先先对它进进行初始始化。初初始化包包括以下下三个步步骤:装载MAAPI332.DDLL动动态链接接库找到想要要调用的的MAPPI函数数地址登录到电电子邮件件对象3-1-1 装装载MAAPI332.DDLL- 要装装载MAAPI,用用户必须须程序运运行时动动态的装装载一个个动态链链接库。LLoaddLibbrarry函数

3、数提供了了此功能能,它定位一一个动态态链接库库,并返返回HIINSTTANCCE局柄柄(需要要保存该该句柄)。LoaddLibbrarry的语语法如下下:LoaddLibbrarry ( lppLibbFilleNaame );其中lppLibbFilleNaame为为LPCCTSTTR结构构变量,是所要调调用的库库的路径径和名称称。程序示例例:/ 调调用MAAPI332.DDLL并并计算函函数地址址HINSSTANNCE hInnstMMaill;hInsstMaail = :LooadLLibrraryy ( “MAAPI332.DDLL” );if ( hIInsttMaiil = NN

4、ULLL )/ 错错误处理理/ 受受篇幅限限制,下下面的错错误处理理部分省省略3-1-2 确确定函数数地址- 由于于MAPPI322.DLLL是被被动态装装载的,因因此不知知道所要要调用的的函数地地址,也也就不能能一开始始就调用用它们,而要通过过函数名名获得函函数的地地址,并并在动态态链接库库中查找找每一个个函数并并核实。因因此首先先必须为为这些函函数声明明指针程序示例例:/ 为为MAPPI322.DLLL中的的函数声声明函数数指针ULONNG (PASSCALL *llpfnnMAPPISeendMMaill) (LHAANDLLE llhSeessiion,ULONNG uulUIIPar

5、ram, lppMappiMeessaage lpMMesssagee,FLAGGS fflFllagss, UULONNG uulReeserrvedd);ULONNG (PASSCALL *llpfnnMAPPIReesollveNNamee) (LHAANDLLE llhSeessiion,ULONNG uulUIIParram, LPPTSTTR llpszzNamme,FLAGGS uulFllagss, UULONNG uulReeserrvedd,lpMaapiRReciipDeesc FARR *llppRReciip);ULONNG (FARR PAASCAAL *lpffn

6、MAAPILLogoon)(ULOONG ulUUIPaaramm,LPSTTR llpszzProofilleNaame, LPPSTRR lppszPPasssworrd,FLAGGS fflFllagss, UULONNG uulReeserrvedd,LPLHHANDDLE lpllhSeessiion);ULONNG (FARR PAASCAAL *lpffnMAAPILLogooff)(LHHANDDLE lhSSesssionn,ULONNG uulUIIParram, FLLAGSS fllFlaags,ULONNG uulReeserrvedd);ULONNG (FARR P

7、AASCAAL *lpffnMAAPIFFreeeBuffferr)(LLPVOOID lpBBufffer);ULONNG (FARR PAASCAAL *lpffnMAAPIAAddrresss)(LLHANNDLEE lhhSesssioon,ULONNG uulUIIParram, LPPSTRR lppszCCapttionn,ULONNG nnEdiitFiieldds, LPSSTR lpsszLaabells,ULONNG nnReccipss, llpMaapiRReciipDeesc lpRReciips,FLAGGS fflFllagss, UULONNG uulRees

8、errvedd,LPULLONGG lppnNeewReecipps,lpMaapiRReciipDeesc FARR *llppNNewRReciips);ULONNG (FARR PAASCAAL *lpffnMAAPIFFinddNexxt)(LHAANDLLE llhSeessiion,ULONNG uulUIIParram, LPPSTRR lppszMMesssageeTyppe,LPSTTR llpszzSeeedMeessaageIID, FLAAGS flFFlaggs,ULONNG uulReeserrvedd, LLPSTTR llpszzMesssaggeIDD);UL

9、ONNG (FARR PAASCAAL *lpffnMAAPIRReaddMaiil)(LHAANDLLE llhSeessiion,ULONNG uulUIIParram, LPPSTRR lppszMMesssageeID,FLAGGS fflFllagss, UULONNG uulReeserrvedd,lpMaapiMMesssagee FAAR *lpppMesssagge);- 为了了决定每每一个函函数的地地址,必必须为每每一个函函数调用用GettProocAdddreess。GetPProccAdddresss的语语法为:GetPProccAdddresss (hMoodulle

10、, lpPProccNamme);其中,hhModdulee为HMMODUULE结结构,是是所调用用DLLL模块的的句柄;lpPrrocNNamee为LPPCSTTR结构构,是函函数名称称。程序示例例:/ 找找到MAAPI332.DDLL函函数的地地址,并并将它们们保存在在函数指指针变量量里(FARRPROOC&) lppfnMMAPIISenndMaail = GGetPProccAdddresss(hhInsstMaail,“MAPPISeendMMaill”);(FARRPROOC&) lppfnMMAPIIRessolvveNaame = GGetPProccAdddresss(hIn

11、sstMaail, “MMAPIIRessolvveNaame”);(FARRPROOC&) lppfnMMAPIILoggon = GGetPProccAdddresss(hhInsstMaail,“MAPPILoogonn”);(FARRPROOC&) lppfnMMAPIILoggofff = GettProocAdddreess(hInnstMMaill,“MAPPILoogofff”);(FARRPROOC&) lppfnMMAPIIFreeeBuuffeer = GeetPrrocAAddrresss(hInsstMaail, “MMAPIIFreeeBuuffeer”);(FAR

12、RPROOC&) lppfnMMAPIIAdddresss = GeetPrrocAAddrresss(hIInsttMaiil,“MAPPIAdddreess”);(FARRPROOC&) lppfnMMAPIIFinndNeext = GGetPProccAdddresss(hhInsstMaail,“MAPPIFiindNNextt”);(FARRPROOC&) lppfnMMAPIIReaadMaail = GGetPProccAdddresss(hhInsstMaail,“MAPPIReeadMMaill”);3-1-3 登登录到电电子邮件件对象- 用户户必须在在电子邮邮件系统统中登

13、录录,才能能实现MMAPII的各种种功能。MMAPII提供了了登录的的三种选选择:登录到一一个已经经存在的的对象。登录到一一个新对对象,用用编程的的方法确确定解释释新信息息。使用对话话框提示示用户登登录。- 我们们通常选选择登录录到一个个已经存存在的电电子邮件件对象,因因为网络络合作用用户通常常会保持持自己的的电子邮件件程序处处于激活活状态。登登录通常常使用MMAPII提供的的函数llpfnnMAPPILoogonn。lpfnnMAPPILoogonn的语法法为:lpfnnMAPPILoogonn (llpszzProofilleNaame, lppszPPasssworrd, flFFlag

14、gs,ulReeserrvedd, llplhhSesssioon );- 其中中,lppszPProffileeNamme指向向一个2256字字符以内内的登录录名称,llpszzPassswoord指指向密码码,它们们均为LPTTSTRR结构。fflFllagss为FLLAGSS结构,其其值详见见表1。uulReeserrvedd必须为为0。llplhhSesssioon为输输出SMMAPII的句柄柄。表1:llpfnnMAPPILoogonn函数中中flFFlaggs的值值值 意义义MAPII_FOORCEE_DOOWNLLOADD在函数调调用返回回之前下下载用户户的所有有邮件。如果MAA

15、PI_FORRCE_DOWWNLOOAD没没有被设设置,那么信件件能够在在函数调调用返回回后在后后台被下下载。MAPII_NEEW_SSESSSIONN 建立立一个新新会话,而不是获获得环境境的共享享会话。如如果MAAPI_NEWW_SEESSIION没没有被设设置,MAPIILoggon使使用现有有的共享享会话。MAPII_LOOGONN_UII 显示示一个登登录对话话框来提提示用户户输入登登录信息息。例如Ouutloook检检查用户户电子邮邮件时便便是如此此。MAPII_PAASSWWORDD_UII MAAPILLogoon只允允许用户户输入电电子邮件件的密码码,而不许改改动账号号。程序示例例:LHANNDLEE lhhSesssioon;ULONNG llRessultt = lpffnMA

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号