回 帖 发 新 帖 刷新版面

主题:在VFP中能否通过运行程序发送电子邮件?

请教各位老师:

    在 VFP 中能否通过运行程序发送电子邮件?若能,应该怎样编写程序?
              
                 有劳各位老师赐教

回复列表 (共5个回复)

沙发

VFP 有两个控件: MAPI SESSION 和 MAPI MESSAGES 可以发送带附件的邮件.

板凳

SIMONLIANG老师:
  我找到了这两个控件,但我不知道如何使用。烦请告诉我应该怎样使用好吗?

                  有劳您啦!

3 楼

我是用的 OUT LOOK,收发时象2楼所讲,也要通过两个控件。

4 楼

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 楼

上述代码的最后6行是将附件删除的,应该将这及行代码删除,否则附件源文件就删掉了。

我来回复

您尚未登录,请登录后再回复。点此登录或注册