It does seem to be a bit of a dearth of VB.net samples for Exchange Web Service Managed API. So here is a sample VB.net code which demonstrates:
NOTE: Following programming examples is for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This sample code assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. This sample code is provided for the purpose of illustration only and is not intended to be used in a production environment.
Public Class Form1
'Creating Servie object for EWS service binding endpoint
Dim service As New ExchangeService(requestedServerVersion:=ExchangeVersion.Exchange2007_SP1)
Private Sub cmdSendMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSendMail.Click
'Create new message object and set properties required to send a mail
Dim message As EmailMessage = New EmailMessage(service)
message.Subject = "Hello from the EWS Managed API"
message.Body = "Now that's easy!"
Catch ex As Exception
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Add a valid EWS service end point here or user Autodiscover
service.Url = New Uri("https://server/ews/exchange.asmx")
'Add a valid user credentials
service.Credentials = New WebCredentials("User", "Password", "Domain")
'To address the SSL challenge
ServicePointManager.ServerCertificateValidationCallback = New RemoteCertificateValidationCallback(AddressOf ValidateCertificate)
Private Function ValidateCertificate(ByVal sender As Object, ByVal certificate As X509Certificate, ByVal
chain As X509Chain, ByVal sslPolicyErrors As SslPolicyErrors) As Boolean
'Return True to force the certificate to be accepted.
Private Sub cmdCreateAppointment_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
'Create appointment object and set properties as required
Dim appt As Appointment = New Appointment(service)
appt.Subject = "Holidays"
appt.Body = "The appointment is for holiday placeholder"
appt.Start = New DateTime(2010, 11, 1)
appt.End = appt.Start.AddHours(24)
appt.IsAllDayEvent = True
appt.LegacyFreeBusyStatus = LegacyFreeBusyStatus.OOF
MessageBox.Show("Appointment Added to Calendar")
We can refer to the articles mentioned below for further reading:
Enjoy EWS and Happy Holidays!!!