- POP3 protocol
- Session and username
- Gmail: What to do if a connection to Gmail (SMTP, IMAP, POP3) fails with a certificate error?
In french: EmailOuvreSessionPOP3
Starts a session for receiving and reading emails with the POP3 protocol. You will only be able to read the emails. You have the ability to start a POP3 session secured via SSL.
// Read an email via the POP3 protocol
IF EmailStartPOP3Session(USER, PASSWORD, "pop3.supplier.com") = True THEN
UserName = USER
UserName = ""
Error("Unable to establish the connection")
// Connection to a POP3 server that requires an SSL connection (gMail for example)
// 995 is the standard port for this type of service
EmailStartPOP3Session(EDT_SESSION, EDT_PWD, EDT_POP, 995, optionSSL)
// Connection to a non-secured POP server
EmailStartPOP3Session(EDT_SESSION, EDT_PWD, EDT_POP, 110)
// 110 is the standard port for this type of service.
// It is also the default value of the function,
// Therefore we could also write
EmailStartPOP3Session(EDT_SESSION, EDT_PWD, EDT_POP)
<Result> = EmailStartPOP3Session(<Username> , <Password> , <Address of POP3 server> [, <Number of POP3 port> [, <Option>]])
- True if the session was started,
- False otherwise. If an error occurs, the ErrorOccurred variable is set to True.
To get more details on the error, use ErrorInfo with the errMessage constant.
<Username>: Character string
Identifies the user. This name is supplied by the service provider or by the network administrator. This name will be used to identify the email session in the different functions for email management.
<Password>: Character string
User password. This password is given by the service provider or by the network administrator.
<Address of POP3 server>: Character string
IP address of email server (incoming protocol). This IP address is supplied by the service provider or by the network administrator. This IP address can have the following format:
- IP address in XXX.XXX.XXX.XXX format (220.127.116.11 for example).
- IP address containing the server name (pop3.freesbee.eu for example). This syntax is recommended.
- IP address returned by NetIPAddress.
<Number of POP3 port>: Optional integer
Identifies the port used for the POP3 protocol (110 by default).
<Option>: Optional Integer constant
Used to specify whether an SSL connection is required:
|optionSSL||SSL connection required (for a secure POP3 server).|
Remark: in most cases, the port used for a secure POP3 server is 995 (instead of 110, the default port value).
- The different parameters passed to EmailStartPOP3Session are supplied by the Internet Service Provider or by the network administrator. An Internet connection is required to manage the emails. Several cases may occur:
- The user uses a modem to connect to Internet: NetOpenRemoteAccess establishes the Internet connection.
- The user uses a direct connection to Internet (cable or ADSL): no specific operation is required.
- The POP3 protocol can only be used to read emails. A WLanguage error occurs if you try to send emails without starting an SMTP session (EmailStartSMTPSession).
To start a POP3 session and an SMTP session at the same time, use EmailStartSession.
- The incoming emails are the ones received when starting the session. All the emails received once the session is started are not accessible. To access the new incoming emails, the POP3 session must be closed and re-started.
Session and username
After starting a POP3 session, you can start an SMTP session (EmailStartSMTPSession
) with the same username.
Gmail: What to do if a connection to Gmail (SMTP, IMAP, POP3) fails with a certificate error?
Since August 2017, a new certificate was deployed by Google: Google Internet Authority G3. Unfortunately, the Windows API for checking certificates does not validate this certificate.
Therefore, starting a POP3, IMAP or SMTP session may fail with the error "The certificate string was not issued by a trusted authority".
To validate the certificate, all you have to do is modify the management mode of emails. The WLanguage EmailConfigure
function allows you to change this mode and to no longer use the Windows API that locks this certificate. The following code must be added before starting the session via EmailStartPOP3Session
// Enable the multi-platform implementation
Remark: From version 23 Update 1, the call to EmailConfigure
is not required anymore: WLanguage is automatically using the management mode of emails adapted to the session.
Unit examples (WINDEV): The POP3 Email functions
Training (WINDEV): WD JavaMail
This page is also available for…