554-5.3.4 Content conversion limit(s) exceeded 554 5.3.4 STOREDRV.Submit.Exception:ConversionFailedException; Failed to process message due to a permanent exception with message The content conversion limit has been exceeded. ConversionFailedException: Th
One of the users is getting following undeliverable error when sending emails via MS Outlook from a VFP based application.
“554-5.3.4 Content conversion limit(s) exceeded 554 5.3.4 STOREDRV.Submit.Exception:ConversionFailedException; Failed to process message due to a permanent exception with message The content conversion limit
has been exceeded. ConversionFailedException: The content conversion limit has been exceeded.”
The size of the message doesn't exceed 500KB.
Message only have two attachments.
Outlook still prompts the security messages even thought we use Redemption.dll to suppress the warnings.
Expected message format to be appeared is HTML but the message always appears in plain text format in sent items (i.e. HTML template always goes as a attachment to the mail).
Message limits for both sender and receiver in exchange and they are set to 15MB.
No internal errors were reported during the process.
Environment is MS Outlook 2010, MS Exchange server 2010. Windows server 2008 R2 64bit.
If required I can send a sample message generated with undeliverable message.
VFP application does not resolve names and I’m not sure whether this will make a difference.
I’m not sure how to narrow down this problem and anybody shed a little light on this?
Hi, Code is something like below. I hope you can understand the values of constants. Please assume that THIS.nUnderTerminalService = 1 in this case. what is missing here is the code to indentify the windows default mails client.
loOutLookApp = CREATEOBJECT("Outlook.Application")
loOutBox = loOutLookApp.GetNameSpace("MAPI").GetDefaultFolder(inOutBox)
llErrorOccured = .F.
IF THIS.nUnderTerminalService = 1
loRDOSession = CreateObject("Redemption.RDOSession")
** Log on to mail session
** Get OutBox folder
loOutBox = loRDOSession.GetDefaultFolder(inOutBox)
loOutlookMailItem = loOutBox.Items.Add(inMailItem)
CATCH TO llErrorOccured
loOutlookMailItem = CREATEOBJECT("Redemption.SafeMailItem")
loOutlookMailItem.Item = loOutBox.Items.Add(inMailItem)
CATCH TO llErrorOccured
IF VARTYPE(loOutlookMailItem) # "O" OR VARTYPE(llErrorOccured) = "O"
loOutlookMailItem = loOutBox.Items.Add(inMailItem) && Fall back to outlook
** Assign necessary properties of loOutlookMailItem Ex: - to, cc, attachments here
lnCurrentMsOutLookVersion = VAL(ALLTRIM(loOutLookApp.Version))
IF lnCurrentMsOutLookVersion => inMsOutLook2010Version OR ;
(lnCurrentMsOutLookVersion => inMsOutLook2002Version AND lnCurrentMsOutLookVersion < inMsOutLook2003Version)
** Check if the Move() exists before its used
** Here, the mail item which was created above and is not used as
** its methods are not exposed when Redemption is used
** Therefore get the original MS Outlook mail item loMailItem.Item or if it does not exists use loMailItem
AMEMBERS(laMailItemMembers, IIF(TYPE("loMailItem.Item")="O",loMailItem.Item,loMailItem), 3)
lnSearchedMethodRow = ASCAN(laMailItemMembers, "Move", 1, -1, 1, 15)
IF lnSearchedMethodRow > 0
loOutBoxMailItem = loMailItem.Move(loOutBox) && Move it from draf to Outbox.
IF VARTYPE(loOutBoxMailItem) = "O"
loMailItem = CREATEOBJECT("Redemption.SafeMailItem")
loMailItem.Item = loOutBoxMailItem
Edited byeCasperTuesday, January 15, 2013 12:39 PM