|  | 
Chilkat  HOME  Android™  AutoIt  C  C#  C++  Chilkat2-Python  CkPython  Classic ASP  DataFlex  Delphi DLL  Go  Java  Node.js  Objective-C  PHP Extension  Perl  PowerBuilder  PowerShell  PureBasic  Ruby  SQL Server  Swift  Tcl  Unicode C  Unicode C++  VB.NET  VBScript  Visual Basic 6.0  Visual FoxPro  Xojo Plugin
| (VB.NET) Outlook Send Email using MIME FormatSee more Outlook ExamplesThis example sends an email using MIME format via the Microsoft Graph Outlook REST API.Note: This example requires Chilkat v11.0.0 or greater. For more information, see https://learn.microsoft.com/en-us/graph/api/user-sendmail?view=graph-rest-1.0&tabs=http#example-4-send-a-new-message-using-mime-format 
 Dim success As Boolean = False ' This example requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim http As New Chilkat.Http ' Use your previously obtained access token here: ' See the following examples for getting an access token: ' Get Microsoft Graph OAuth2 Access Token (Azure AD v2.0 Endpoint). ' Get Microsoft Graph OAuth2 Access Token (Azure AD Endpoint). ' Refresh Access Token (Azure AD v2.0 Endpoint). ' Refresh Access Token (Azure AD Endpoint). Dim jsonToken As New Chilkat.JsonObject success = jsonToken.LoadFile("qa_data/tokens/microsoftGraph.json") If (success = False) Then Debug.WriteLine(jsonToken.LastErrorText) Exit Sub End If http.AuthToken = jsonToken.StringOf("access_token") ' To send email, we'll POST to the following endpoint: ' ' POST /users/{id | userPrincipalName}/sendMail ' ' (The special keyword "me" may be used in place of a principal name.) ' ' The body of the POST request will contain the MIME source of the email in base64 format. ' Create a new email object Dim email As New Chilkat.Email email.Subject = "Test Outlook API to Send HTML Email with Attachments" email.From = "Mary <mary@somewhere.com>" email.AddTo("Joe","joe@example.com") ' Add a plain-text alternative body, which will likely never be seen. ' (It is shown if the receiving email client is incapable of displaying HTML email.) email.AddPlainTextAlternativeBody("This is a plain-text alternative body...") ' Our HTML will include an image, so add the related image here. Dim contentIdStarfish As String = email.AddRelatedFile("qa_data/jpg/starfish.jpg") If (email.LastMethodSuccess = False) Then Debug.WriteLine(email.LastErrorText) Exit Sub End If ' The src attribute for the image tag is set to the contentIdStarfish: Dim sbHtml As New Chilkat.StringBuilder sbHtml.Append("<html><body><p>This is an HTML email with an embedded image.</p>") sbHtml.Append("<p><img src=""cid:CONTENT_ID_STARFISH"" /></p></body></html>") Dim numReplacements As Integer = sbHtml.Replace("CONTENT_ID_STARFISH",contentIdStarfish) email.AddHtmlAlternativeBody(sbHtml.GetAsString()) ' Finally, add some attachments to the email. ' Add a file attachment. success = email.AddFileAttachment2("qa_data/pdf/fishing.pdf","application/pdf") If (success = False) Then Debug.WriteLine(email.LastErrorText) Exit Sub End If ' Add an attachment where the content is contained in a string. Dim content As String = "This is the content of the 2nd attached file." email.AddStringAttachment("someText.txt",content) ' Get the email as multi-line base64.. Dim bdMime As New Chilkat.BinData email.GetMimeBd(bdMime) ' Now get it as multi-line base64 Dim sbBase64 As New Chilkat.StringBuilder bdMime.GetEncodedSb("base64_mime",sbBase64) ' Send the HTTP POST (i.e. send the email) Dim resp As New Chilkat.HttpResponse success = http.HttpSb("POST","https://graph.microsoft.com/v1.0/me/sendMail",sbBase64,"utf-8","text/plain",resp) If (success = False) Then Debug.WriteLine(http.LastErrorText) Exit Sub End If ' The send succeeded if the response status code = 202. ' In the success case, there is no response body. (We just get the response code to know that it succeeded.) If (resp.StatusCode <> 202) Then Dim json As New Chilkat.JsonObject json.Load(resp.BodyStr) json.EmitCompact = False Debug.WriteLine(json.Emit()) Debug.WriteLine("Failed, response status code = " & resp.StatusCode) Else Debug.WriteLine("Outlook Mail Sent.") End If | ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.