Unicode C
Unicode C
Create Email with Non-Standard Binary Body
Creates an email where the only body is a binary WAV file. The technique used in the example could be applied to other binary files, such as PDF, MS-WORD docs, Excel docs, etc.Chilkat Unicode C Downloads
#include <C_CkMimeW.h>
#include <C_CkEmailW.h>
void ChilkatSample(void)
{
BOOL success;
HCkMimeW mime;
const wchar_t *strMime;
HCkEmailW email;
success = FALSE;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
mime = CkMimeW_Create();
success = CkMimeW_SetBodyFromFile(mime,L"VoiceMessage.wav");
if (success == FALSE) {
wprintf(L"%s\n",CkMimeW_lastErrorText(mime));
CkMimeW_Dispose(mime);
return;
}
// The MIME has this header:
// Content-Disposition: attachment;
// filename="VoiceMessage.wav"
// Content-Transfer-Encoding: base64
// Content-Type: audio/x-wav;
// name="VoiceMessage.wav"
// We don't want the content-disposition to be an
// attachment -- otherwise the email object will self-correct
// and put it in a multipart/mixed format...
CkMimeW_putDisposition(mime,L"");
CkMimeW_putFilename(mime,L"");
strMime = CkMimeW_getMime(mime);
wprintf(L"%s\n",strMime);
// Now load it into an email object:
email = CkEmailW_Create();
success = CkEmailW_SetFromMimeText(email,strMime);
if (success == FALSE) {
wprintf(L"%s\n",CkEmailW_lastErrorText(email));
CkMimeW_Dispose(mime);
CkEmailW_Dispose(email);
return;
}
// Add subject, TO, FROM, etc.
CkEmailW_putSubject(email,L"This is a test");
CkEmailW_putFrom(email,L"support@chilkatsoft.com");
success = CkEmailW_AddTo(email,L"Matt",L"matt@chilkatsoft.com");
// Your email is ready to send.
// (but for this example, we'll simply save it to a file...)
success = CkEmailW_SaveEml(email,L"email.eml");
if (success == FALSE) {
wprintf(L"%s\n",CkEmailW_lastErrorText(email));
CkMimeW_Dispose(mime);
CkEmailW_Dispose(email);
return;
}
wprintf(L"OK!\n");
CkMimeW_Dispose(mime);
CkEmailW_Dispose(email);
}