Sample code for 30+ languages & platforms
Classic ASP

SMTP using SOCKS5, SOCKS4 Proxy

Demonstrates how to communicate with an SMTP server via a SOCKS4 or SOCKS5 proxy.

Chilkat Classic ASP Downloads

Classic ASP
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
success = 0

' 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 = Server.CreateObject("Chilkat.MailMan")

' To use a SOCKS4 or SOCKS5 proxy, simply set the following
' properties prior to making any calls that communicate with
' an SMTP server:
' The SOCKS hostname may be a domain name or 
' IP address:
mailman.SocksHostname = "www.mysocksproxyserver.com"
mailman.SocksPort = 1080
mailman.SocksUsername = "myProxyLogin"
mailman.SocksPassword = "myProxyPassword"
' Set the SOCKS version to 4 or 5 based on the version
' of the SOCKS proxy server:
mailman.SocksVersion = 5
' Note: SOCKS4 servers only support usernames without passwords.
' SOCKS5 servers support full login/password authentication.

' Set the SMTP server.
mailman.SmtpHost = "smtp.chilkatsoft.com"

' Set the SMTP login/password (if required)
mailman.SmtpUsername = "myUsername"
mailman.SmtpPassword = "myPassword"

' Create a new email object
set email = Server.CreateObject("Chilkat.Email")

email.Subject = "This is a test"
email.Body = "This is a test"
email.From = "Chilkat Support <support@chilkatsoft.com>"
success = email.AddTo("Chilkat Admin","admin@chilkatsoft.com")

' Call SendEmail to connect to the SMTP server and send.
' The connection (i.e. session) to the SMTP server remains
' open so that subsequent SendEmail calls may use the
' same connection.  
success = mailman.SendEmail(email)
If (success <> 1) Then
    Response.Write "<pre>" & Server.HTMLEncode( mailman.LastErrorText) & "</pre>"
    Response.End
End If

' Some SMTP servers do not actually send the email until 
' the connection is closed.  In these cases, it is necessary to
' call CloseSmtpConnection for the mail to be  sent.  
' Most SMTP servers send the email immediately, and it is 
' not required to close the connection.  We'll close it here
' for the example:
success = mailman.CloseSmtpConnection()
If (success <> 1) Then
    Response.Write "<pre>" & Server.HTMLEncode( "Connection to SMTP server not closed cleanly.") & "</pre>"
End If

Response.Write "<pre>" & Server.HTMLEncode( "Mail Sent!") & "</pre>"

%>
</body>
</html>