Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
MAPI with filetostr() as email body
Message
From
25/10/2009 14:18:48
 
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
01431288
Message ID:
01431335
Views:
45
this is the code - (i did not take note of the author naomi) - i would like to replace
lcBody = "MAPI seems to work pretty good."
with
lcBody = filetostr("c:\sample.txt")

if i can solve that problem everything is working fine in ms outlook - i have upgraded to the full mapi thanks to
naomi for the link here: MapiMail.Updates@NBCSoftware.com

many thanks

k

Dimension aryAttach(1) && Add as many elements (attachments) as you like
Local lcFrom, lcTo, lcSubject, lcBody, lnCount, lcCC, lcBCC, lcUserName, lcPassword, llEmailStatus, lcErrorHandlerWas
***** Replace the following with real values to run this example********
aryAttach(1) = "C:\sample.txt" && File to attach, add more if needed
lcFrom = "me@somewhere.net"
lcTo = "you@somewhere.net; someonelse@somewhere.com"
lcCC = "mv@met.com"
lcBCC = "mv2@met.com"
lcUserName = "" && Only if required by default smtp server
lcPassword = "" && Only if required by default smtp server
*************************************************************
lcSubject = "VFP Email Via MAPI"
lcBody = "MAPI seems to work pretty good."
lcErrorHandlerWas = On("ERROR")
Wait Window " One Moment... Email is being generated and sent " Nowait

llEmailStatus = SendViaMAPI(lcFrom, lcTo, lcSubject, lcBody, @aryAttach, lcCC, lcBCC, lcUserName, lcPassword)
On Error &lcErrorHandlerWas
Wait Clear
If llEmailStatus
Messagebox("Your message to " + lcTo + " has been sent.",64,"EMAIL SENT SUCCESSFULLY VIA MAPI")
Else
Messagebox("Your message to " + lcTo + " was not sent.",64,"EMAIL PROBLEM WITH MAPI")
Endif

**********************************************************************
Function SendViaMAPI(tcFrom, tcTo, tcSubject, tcBody, taFiles, tcCC, tcBCC, tcUserName, tcPassword)
**********************************************************************
#Define Primary 1
#Define CARBON_COPY 2
#Define BLIND_CARBON_COPY 3
Local loSession, loMessages
On Error Return(.F.)
loSession = Createobject("MSMAPI.MAPISession")
If Type('tcUserName') = 'C'
loSession.UserName = tcUserName
Endif
If Type('tcPassword') = 'C'
loSession.Password = tcPassword
Endif
loSession.Signon()
If (loSession.SessionID > 0)
loMessages = Createobject( "MSMAPI.MAPIMessages" )
loMessages.SessionID = loSession.SessionID
Endif
With loMessages
.Compose()
.RecipDisplayName = tcTo
.RecipType = Primary
*.ResolveName()

If Type("tcCC") = "C" And !Empty(tcCC)
.RecipIndex = .RecipCount
.RecipDisplayName = tcCC
.RecipType = CARBON_COPY
.ResolveName()
Endif
If Type("tcBCC") = "C" And !Empty(tcBCC)
.RecipIndex = .RecipCount
.RecipDisplayName = tcBCC
.RecipType = BLIND_CARBON_COPY
.ResolveName()
Endif
If Type('taFiles',1) = "A"
For lnCountAttachments = 1 To Alen(taFiles)
.AttachmentIndex = .AttachmentCount
.AttachmentPathName = taFiles(lnCountAttachments)
Endfor
Endif
.MsgSubject = tcSubject
.MsgNoteText = tcBody
.Send(.T.)
Endwith
loSession.Signoff()
Store .Null. To loSession, loMessages
Release loSession, loMessages
Return .T.
Endfunc
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform