PureBasic
PureBasic
Remove a Header Field from an Email
See more Email Object Examples
Demonstrates the Chilkat Email.RemoveHeaderField method, which removes by name all occurrences of a header field. Header-field names are case-insensitive, and every repeated occurrence with the given name is removed. This example adds a custom header, then removes it.
Background: Editing a message sometimes means deleting a header outright — stripping a tracking header, removing an
X- flag before forwarding, or clearing a stale field before re-sending. Because a field name can appear more than once (like Received), RemoveHeaderField removes all matching occurrences in one call rather than just the first.Chilkat PureBasic Downloads
IncludeFile "CkEmail.pb"
Procedure ChilkatExample()
; Demonstrates the RemoveHeaderField method, which removes by name all occurrences of a
; header field. Header-field names are case-insensitive.
email.i = CkEmail::ckCreate()
If email.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkEmail::setCkSubject(email, "Remove header field")
CkEmail::setCkFrom(email, "alice@example.com")
CkEmail::ckAddHeaderField(email,"X-Custom-Header","some value")
; Use HasHeaderMatching to test for the header's presence. ("*" matches any value.)
hasBefore.i = CkEmail::ckHasHeaderMatching(email,"X-Custom-Header","*",0)
Debug "Has X-Custom-Header before: " + Str(hasBefore)
; Remove all occurrences of the header field.
CkEmail::ckRemoveHeaderField(email,"X-Custom-Header")
hasAfter.i = CkEmail::ckHasHeaderMatching(email,"X-Custom-Header","*",0)
Debug "Has X-Custom-Header after: " + Str(hasAfter)
CkEmail::ckDispose(email)
ProcedureReturn
EndProcedure