C
C
Transition from MailMan.LoadXmlEmail to Email.SetFromXmlText
Provides instructions for replacing deprecated LoadXmlEmail method calls with Email.SetFromXmlText.Chilkat C Downloads
#include <C_CkMailMan.h>
#include <C_CkEmail.h>
#include <C_CkStringBuilder.h>
void ChilkatSample(void)
{
BOOL success;
HCkMailMan mailman;
const char *xmlFilePath;
HCkEmail emailObj;
HCkStringBuilder sb;
HCkEmail email;
success = FALSE;
mailman = CkMailMan_Create();
// ...
// ...
xmlFilePath = "c:/test/example.xml";
// ------------------------------------------------------------------------
// The LoadXmlEmail method is deprecated:
emailObj = CkMailMan_LoadXmlEmail(mailman,xmlFilePath);
if (CkMailMan_getLastMethodSuccess(mailman) == FALSE) {
printf("%s\n",CkMailMan_lastErrorText(mailman));
CkMailMan_Dispose(mailman);
return;
}
// ...
// ...
CkEmail_Dispose(emailObj);
// ------------------------------------------------------------------------
// Do the equivalent using Email.SetFromXmlText.
sb = CkStringBuilder_Create();
success = CkStringBuilder_LoadFile(sb,xmlFilePath,"utf-8");
if (success == FALSE) {
printf("%s\n",CkStringBuilder_lastErrorText(sb));
CkMailMan_Dispose(mailman);
CkStringBuilder_Dispose(sb);
return;
}
email = CkEmail_Create();
success = CkEmail_SetFromXmlText(email,CkStringBuilder_getAsString(sb));
if (success == FALSE) {
printf("%s\n",CkEmail_lastErrorText(email));
CkMailMan_Dispose(mailman);
CkStringBuilder_Dispose(sb);
CkEmail_Dispose(email);
return;
}
CkMailMan_Dispose(mailman);
CkStringBuilder_Dispose(sb);
CkEmail_Dispose(email);
}