PureBasic
PureBasic
IMAP LastResponse and LastResponseCode
Demonstrates the IMAP LastResponse and LastResponseCode properties.Chilkat PureBasic Downloads
IncludeFile "CkImap.pb"
Procedure ChilkatExample()
success.i = 0
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
imap.i = CkImap::ckCreate()
If imap.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
; Use TLS
CkImap::setCkSsl(imap, 1)
CkImap::setCkPort(imap, 993)
success = CkImap::ckConnect(imap,"imap.gmail.com")
If success <> 1
Debug CkImap::ckLastErrorText(imap)
CkImap::ckDispose(imap)
ProcedureReturn
EndIf
; Authenticate, but with an intentionally incorrect password
; so we can see the contents of the LastErrorText, and also
; the LastResponse and LastResponseCode properties.
success = CkImap::ckLogin(imap,"my_login","my_intentionally incorrect_password")
If success = 1
Debug "Successfull login, but this example is meant to demonstrate an error, such as a failed login."
CkImap::ckDispose(imap)
ProcedureReturn
EndIf
; Let's look at the LastErrorText, and also the LastResponse and LastResponseCode.
Debug "LastResponseCode = " + CkImap::ckLastResponseCode(imap)
Debug "LastReponse = " + CkImap::ckLastResponse(imap)
Debug "LastErrorText = " + CkImap::ckLastErrorText(imap)
; Sample output:
; LastResponseCode = AUTHENTICATIONFAILED
; LastReponse = aaab NO [AUTHENTICATIONFAILED] Invalid credentials (Failure)
; LastErrorText = ChilkatLog:
; Login:
; DllDate: Oct 28 2023
; ChilkatVersion: 9.5.0.96
; UnlockPrefix: EXCODE
; UnlockStatus: 2
; Architecture: Little Endian; 64-bit
; Language: .NET 4.5 / x64 / VS2012
; VerboseLogging: 0
; imapServer: imap.gmail.com
; loginX(47ms):
; login: my_login
; greeting: * OK Gimap ready for requests from 98.213.102.119 w5mb285327441qtc
;
; authenticateLogin(47ms):
; loginImap(47ms):
; ConnectionType: SSL/TLS
; ImapCmdSent: aaab LOGIN "my_login"
; getCompleteResponse(47ms):
; ImapCmdResp: aaab NO [AUTHENTICATIONFAILED] Invalid credentials (Failure)
; --getCompleteResponse
; --loginImap
; isOK:
; serverResponse: aaab NO [AUTHENTICATIONFAILED] Invalid credentials (Failure)
; --isOK
; --authenticateLogin
; --loginX
; Failed.
; --Login
; --ChilkatLog
; Disconnect from the IMAP server.
success = CkImap::ckDisconnect(imap)
CkImap::ckDispose(imap)
ProcedureReturn
EndProcedure