Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Tcl) Send Encrypted Email to Multiple RecipientsDemonstrates how to create and send an S/MIME encrypted email to multiple recipients. The digital certificate of each recipient is required. The encrypting/sending process uses each recipient's digital certificate (which internally contains the public key). Each recipient decrypts the received email using his/her private key.
load ./chilkat.dll # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. # The mailman object is used for sending and receiving email. set mailman [new_CkMailMan] # Set the SMTP server. CkMailMan_put_SmtpHost $mailman "smtp.mymailserver.com" # Load each recipient's certificate into a Chilkat certificate object. # This example loads the certificates from files. However, the Chilkat # certificate object provides other means for loading certificates, # such as from in-memory PEM strings, or in-memory binary DER encoded form, etc. set cert1 [new_CkCert] set success [CkCert_LoadFromFile $cert1 "recipient1.cer"] if {$success != 1} then { puts [CkCert_lastErrorText $cert1] delete_CkMailMan $mailman delete_CkCert $cert1 exit } set cert2 [new_CkCert] set success [CkCert_LoadFromFile $cert2 "recipient2.cer"] if {$success != 1} then { puts [CkCert_lastErrorText $cert2] delete_CkMailMan $mailman delete_CkCert $cert1 delete_CkCert $cert2 exit } set cert3 [new_CkCert] set success [CkCert_LoadFromFile $cert3 "recipient3.cer"] if {$success != 1} then { puts [CkCert_lastErrorText $cert3] delete_CkMailMan $mailman delete_CkCert $cert1 delete_CkCert $cert2 delete_CkCert $cert3 exit } # Create a new email object set email [new_CkEmail] CkEmail_put_Subject $email "This email is encrypted and sent to 3 recipients" CkEmail_put_Body $email "This is an S/MIME encrypted mail sent to 3 recipients" CkEmail_put_From $email "Chilkat Support <support@chilkatsoft.com>" # Make each of the certificates available for encrypting the email # by calling AddEncryptCert for each. set success [CkEmail_AddEncryptCert $email $cert1] if {$success == 1} then { set success [CkEmail_AddEncryptCert $email $cert2] } if {$success == 1} then { set success [CkEmail_AddEncryptCert $email $cert3] } if {$success != 1} then { puts [CkEmail_lastErrorText $email] delete_CkMailMan $mailman delete_CkCert $cert1 delete_CkCert $cert2 delete_CkCert $cert3 delete_CkEmail $email exit } # Add 3 recipients to the email (2 TO addresses, and 1 CC address) set success [CkEmail_AddTo $email "Recipient 1" "admin@cknotes.com"] set success [CkEmail_AddTo $email "Recipient 2" "somebody001122@yahoo.com"] set success [CkEmail_AddCC $email "Recipient 3" "somebody123xyz@gmail.com"] # Indicate that the email is to be sent encrypted. CkEmail_put_SendEncrypted $email 1 # Send the encrypted email... set success [CkMailMan_SendEmail $mailman $email] if {$success != 1} then { puts [CkMailMan_lastErrorText $mailman] } else { puts "Encrypted Email Sent!" } delete_CkMailMan $mailman delete_CkCert $cert1 delete_CkCert $cert2 delete_CkCert $cert3 delete_CkEmail $email |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.