![]() |
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
(PowerBuilder) POP3 Verify Signed (S/MIME) EmailDemonstrates how to download and verify digitally signed S/MIME email. Note: This example requires Chilkat v11.0.0 or greater.
integer li_rc integer li_Success oleobject loo_Mailman oleobject loo_StUidls oleobject loo_Email oleobject loo_Cert integer li_Count integer i li_Success = 0 // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. loo_Mailman = create oleobject li_rc = loo_Mailman.ConnectToNewObject("Chilkat.MailMan") if li_rc < 0 then destroy loo_Mailman MessageBox("Error","Connecting to COM object failed") return end if // Set the POP3 server's hostname loo_Mailman.MailHost = "pop.example.com" // Set the POP3 login/password. loo_Mailman.PopUsername = "myLogin" loo_Mailman.PopPassword = "myPassword" loo_StUidls = create oleobject li_rc = loo_StUidls.ConnectToNewObject("Chilkat.StringTable") li_Success = loo_Mailman.FetchUidls(loo_StUidls) if li_Success = 0 then Write-Debug loo_Mailman.LastErrorText destroy loo_Mailman destroy loo_StUidls return end if loo_Email = create oleobject li_rc = loo_Email.ConnectToNewObject("Chilkat.Email") loo_Cert = create oleobject li_rc = loo_Cert.ConnectToNewObject("Chilkat.Cert") li_Count = loo_StUidls.Count i = 0 do while i < li_Count // Download the full email. li_Success = loo_Mailman.FetchByUidl(loo_StUidls.StringAt(i),0,0,loo_Email) if li_Success = 0 then Write-Debug loo_Mailman.LastErrorText destroy loo_Mailman destroy loo_StUidls destroy loo_Email destroy loo_Cert return end if Write-Debug string(i) Write-Debug "From: " + loo_Email.From Write-Debug "Subject: " + loo_Email.Subject // The security layers of signed and/or encrypted emails // are automatically "unwrapped" when loaded into // a Chilkat email object. // An application only needs to check to see if an email // was received signed or encrypted, and then examine // the success/failure. For example: if loo_Email.ReceivedSigned = 1 then Write-Debug "This email was signed." // Check to see if the signatures were verified. if loo_Email.SignaturesValid = 1 then Write-Debug "Digital signature(s) verified." Write-Debug "Signer: " + loo_Email.SignedBy li_Success = loo_Email.LastSignerCert(0,loo_Cert) if li_Success = 0 then Write-Debug loo_Email.LastErrorText destroy loo_Mailman destroy loo_StUidls destroy loo_Email destroy loo_Cert return end if Write-Debug "Signing cert: " + loo_Cert.SubjectCN end if else Write-Debug "Digital signature verification failed." end if i = i + 1 loop loo_Mailman.Pop3EndSession() destroy loo_Mailman destroy loo_StUidls destroy loo_Email destroy loo_Cert |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.