Visual Basic Example' The following example codes demonstrate encrypting email message with digital signature - S/MIME
' To get full sample projects, please download and install EASendMail on your machine.
' To run it correctly, please change SMTP server, user, password, sender, recipient value to yours
' Add EASendMail namespace
Imports EASendMail
Module Module1
Sub Main()
Dim oMail As New SmtpMail("TryIt")
Dim oSmtp As New SmtpClient()
' Set sender email address, please change it to yours
oMail.From = "test@emailarchitect.net"
' Set recipient email address, please change it to yours
oMail.To = "support@emailarchitect.net"
' Set email subject
oMail.Subject = "test encrypted email"
' Set email body
oMail.TextBody = "this is a test email with email encryption (S/MIME)"
' Your SMTP server address
Dim oServer As New SmtpServer("smtp.emailarchitect.net")
' User and password for ESMTP authentication, if your server doesn't require
' User authentication, please remove the following codes.
oServer.User = "test@emailarchitect.net"
oServer.Password = "testpassword"
' If your SMTP server requires SSL/TLS connection, please add this line
' oServer.ConnectType = SmtpConnectType.ConnectSSLAuto
Try
' Find certificate by email adddress in My Personal Store.
' Once the certificate is loaded to From, the email content
' will be signed automatically
oMail.From.Certificate.FindSubject(oMail.From.Address, _
Certificate.CertificateStoreLocation.CERT_SYSTEM_STORE_CURRENT_USER, _
"My")
Catch exp As Exception
Console.WriteLine("No sign certificate found for <" + _
oMail.From.Address + ">:" + exp.Message)
End Try
Dim count As Integer = oMail.To.Count
For i As Integer = 0 To count - 1
Dim oAddress As MailAddress = oMail.To(i)
Try
' Find certificate by email adddress in My Other Peoples Store.
' The certificate can be also imported by *.cer file like this:
' oAddress.Certificate.Load("c:\encrypt1.cer")
' Once the certificate is loaded to MailAddress, the email content
' will be encrypted automatically
oAddress.Certificate.FindSubject(oAddress.Address, _
Certificate.CertificateStoreLocation.CERT_SYSTEM_STORE_CURRENT_USER, _
"AddressBook")
Catch ep As Exception
Try
oAddress.Certificate.FindSubject(oAddress.Address, _
Certificate.CertificateStoreLocation.CERT_SYSTEM_STORE_CURRENT_USER, _
"My")
Catch exp As Exception
Console.WriteLine("No encryption certificate found for <" + _
oAddress.Address + ">:" + exp.Message)
End Try
End Try
Next
Try
Console.WriteLine("start to send encrypted email ...")
oSmtp.SendMail(oServer, oMail)
Console.WriteLine("email was sent successfully!")
Catch ep As Exception
Console.WriteLine("failed to send email with the following error:")
Console.WriteLine(ep.Message)
End Try
End Sub
End Module
Click here to read original topic - full version ... If you have any comments or questions about above example codes, please add your comments here.