主题:在VFP中能否通过运行程序发送电子邮件?
QIUSHIZHIDAO
[专家分:0] 发布于 2008-09-30 10:04:00
请教各位老师:
在 VFP 中能否通过运行程序发送电子邮件?若能,应该怎样编写程序?
有劳各位老师赐教
回复列表 (共5个回复)
沙发
SIMONLIANG [专家分:420] 发布于 2008-10-03 10:32:00
VFP 有两个控件: MAPI SESSION 和 MAPI MESSAGES 可以发送带附件的邮件.
板凳
QIUSHIZHIDAO [专家分:0] 发布于 2008-10-04 07:24:00
SIMONLIANG老师:
我找到了这两个控件,但我不知道如何使用。烦请告诉我应该怎样使用好吗?
有劳您啦!
3 楼
北京惬意 [专家分:1330] 发布于 2008-10-04 08:37:00
我是用的 OUT LOOK,收发时象2楼所讲,也要通过两个控件。
4 楼
SIMONLIANG [专家分:420] 发布于 2008-10-04 09:51:00
1.建一个表单,其中包括
TEXT1 - 收件人地址
TEXT2 - 标题
EDIT1 - 要发送的信息
LIST1 - 附件列表
COMMAND1 - CLICK EVENTS:
WITH THISFORM.MAPISess
.LogonUI=.F.
.DownloadMail=.F.
.SignON
ENDWITH
THISFORM.MAPIMess.SessionID=THISFORM.MAPISess.SessionID
WITH THISFORM.MAPIMess
.MSGINDEX=-1
.COMPOSE
IF .NOT.EMPTY(THISFORM.TEXT1.VALUE)
.RECIPDISPLAYNAME=ALLTRIM(THISFORM.TEXT1.VALUE)
ENDIF
.MSGSUBJECT=ALLTRIM(THISFORM.TEXT2.VALUE)
.MSGNOTETEXT=THISFORM.EDIT1.Value
LOCAL J
J=0
FOR I=1 TO THISFORM.LIST1.ListCount
IF THISFORM.LIST1.Selected(I)
.ATTACHMENTINDEX=J
.ATTACHMENTPATHNAME=cdir+THISFORM.LIST1.List(I)
J=J+1
ENDIF
ENDFOR
THISFORM.REFRESH
.SEND(1)
ENDWITH
THISFORM.MAPISess.SIGNOFF
SET DEFAULT TO &CPATH
RUN DEL/Q &CPATH\SEMAIL\*.*
THISFORM.LIST1.Refresh
THISFORM.TEXT1.Value=''
THISFORM.TEXT2.Value=''
THISFORM.EDIT1.Value=''
THISFORM.COMMAND2.Enabled=.F.
THISFORM.Refresh
5 楼
SIMONLIANG [专家分:420] 发布于 2008-10-04 10:00:00
上述代码的最后6行是将附件删除的,应该将这及行代码删除,否则附件源文件就删掉了。
我来回复