Unicode C
Unicode C
Send Email without Authentication (no Login)
Demonstrates how to send email using an SMTP server that does not require authentication.An SMTP server that needs no authentication should be protected by a firewall, to prevent outsiders from using it as a SPAM server. To send email without logging in, simply set the mailman's SmtpAuthMethod property = "NONE".
Chilkat Unicode C Downloads
#include <C_CkMailManW.h>
#include <C_CkEmailW.h>
void ChilkatSample(void)
{
BOOL success;
HCkMailManW mailman;
HCkEmailW email;
success = FALSE;
// 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.
mailman = CkMailManW_Create();
// Set the SMTP server. Perhaps it is the local machine.
CkMailManW_putSmtpHost(mailman,L"localhost");
// Or perhaps it's a particular computer on the local network:
CkMailManW_putSmtpHost(mailman,L"192.168.1.123");
// Or provide a local domain that resolves to an IP address on the local network:
CkMailManW_putSmtpHost(mailman,L"mymailsesrver.com");
// Set the SmtpAuthMethod property = "NONE"
CkMailManW_putSmtpAuthMethod(mailman,L"NONE");
// Set the SMTP login/password (this may be omitted given no authentication will take place)
// mailman.SmtpUsername = "myUsername";
// mailman.SmtpPassword = "myPassword";
// Create a new email object
email = CkEmailW_Create();
CkEmailW_putSubject(email,L"This is a test");
CkEmailW_putBody(email,L"This is a test");
CkEmailW_putFrom(email,L"Chilkat Support <support@chilkatsoft.com>");
success = CkEmailW_AddTo(email,L"Chilkat Admin",L"admin@chilkatsoft.com");
// To add more recipients, call AddTo, AddCC, or AddBcc once per recipient.
// 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 = CkMailManW_SendEmail(mailman,email);
if (success != TRUE) {
wprintf(L"%s\n",CkMailManW_lastErrorText(mailman));
CkMailManW_Dispose(mailman);
CkEmailW_Dispose(email);
return;
}
// 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 = CkMailManW_CloseSmtpConnection(mailman);
if (success != TRUE) {
wprintf(L"Connection to SMTP server not closed cleanly.\n");
}
wprintf(L"Mail Sent!\n");
CkMailManW_Dispose(mailman);
CkEmailW_Dispose(email);
}