Visual FoxPro
Visual FoxPro
Attach a File to a Multipart MIME Entity
See more MIME Examples
Demonstrates the Chilkat Mime.AppendPartFromFile method, which reads a local file, creates an attachment part, and appends it. The only argument is the file path; the content headers are chosen from the filename extension.
Note: The file paths are relative to the application's current working directory. Absolute paths may also be used. Supply the paths appropriate to your own environment.
Background: This is the one-call way to add an attachment: Chilkat reads the file, infers its
Content-Type from the extension, base64-encodes binary content, and appends it as a child part — typically inside a multipart/mixed. It is the building block behind adding attachments to an email, saving you from constructing the part and setting its headers by hand.Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loMime
LOCAL loBodyPart
lnSuccess = 0
* Demonstrates the Mime.AppendPartFromFile method, which reads a local file, creates an attachment
* part, and appends it. The only argument is the file path; the content headers are chosen from
* the filename extension.
loMime = CreateObject('Chilkat.Mime')
lnSuccess = loMime.NewMultipartMixed()
IF (lnSuccess = 0) THEN
? loMime.LastErrorText
RELEASE loMime
CANCEL
ENDIF
* A message body part.
loBodyPart = CreateObject('Chilkat.Mime')
lnSuccess = loBodyPart.SetBodyFromPlainText("Please see the attached files.")
IF (lnSuccess = 0) THEN
? loBodyPart.LastErrorText
RELEASE loMime
RELEASE loBodyPart
CANCEL
ENDIF
lnSuccess = loMime.AppendPart(loBodyPart)
IF (lnSuccess = 0) THEN
? loMime.LastErrorText
RELEASE loMime
RELEASE loBodyPart
CANCEL
ENDIF
* Attach files directly.
lnSuccess = loMime.AppendPartFromFile("qa_data/report.pdf")
IF (lnSuccess = 0) THEN
? loMime.LastErrorText
RELEASE loMime
RELEASE loBodyPart
CANCEL
ENDIF
lnSuccess = loMime.AppendPartFromFile("qa_data/photo.jpg")
IF (lnSuccess = 0) THEN
? loMime.LastErrorText
RELEASE loMime
RELEASE loBodyPart
CANCEL
ENDIF
? "Number of parts: " + STR(loMime.NumParts)
RELEASE loMime
RELEASE loBodyPart