When converting some emails, the converter fails with “Cannot convert. The file is corrupt or damaged. Incorrect file header”.
However, when opening this email in Outlook, it loads just fine including attachments. No error here.
My company policy does not allow the specific file to be shared, but here is some more information:
Version: 25.9.0
EmailLoadOptions and conversion code:
EmailLoadOptions options = new()
{
DisplayHeader = true,
DisplayFromEmailAddress = true,
DisplayToEmailAddress = true,
DisplayEmailAddresses = true,
DisplayCcEmailAddress = true,
DisplayBccEmailAddress = true,
Depth = 2,
TimeZoneOffset = TimeSpan.FromHours(2),
};
using Converter converterGroupDocs = new(() => mailStream, _ => options);
converterGroupDocs.Convert(
ctx => new PdfConvertOptions(),
conversionCompletedCallback,
CancellationToken.None
);
This is the exception, that has been thrown:
GroupDocs.Conversion.Exceptions.CorruptOrDamagedFileException: Cannot convert. The file is corrupt or damaged. Incorrect file header
---> Aspose.Pdf.InvalidPdfFileFormatException: Incorrect file header
at #=zbYFkEb0m8XLicMDR5i57wF8GZRh4ezKkPQ==.#=zjpYUs5pOYNQo()
at #=zbYFkEb0m8XLicMDR5i57wF8GZRh4ezKkPQ==..ctor(Stream #=z1BTxTk8=, String #=zlcid8O8=, Boolean #=zo1Skt$2TqBPi, ICustomSecurityHandler #=znWLgMkjqjmiX, CertificateEncryptionOptions #=ztJk4YO3M2L70)
at #=zbYFkEb0m8XLicMDR5i57wF8GZRh4ezKkPQ==..ctor(Stream #=z1BTxTk8=)
at #=z9X3Ts8yerjjCCSvbE_48MWRgPT9hTh4g2YTg7Ew=.#=zvvWixxU=(Stream #=z1BTxTk8=)
at #=z$5tYAjyLZUtIA2BoOdCKfFxtkfIWd37uug==..ctor(Stream #=z1BTxTk8=)
at #=z9X3Ts8yerjjCCSvbE_48MWRgPT9hTh4g2YTg7Ew=.#=zcT1UhX7Ajq7_(Stream #=z1BTxTk8=)
at #=zrIAvGV7Wc2ijO$fGJIKr9LppELHl.#=zbI9veDs=(Stream #=z1BTxTk8=)
at #=zrIAvGV7Wc2ijO$fGJIKr9LppELHl..ctor(Stream #=z1BTxTk8=)
at Aspose.Pdf.Document.#=zm0QRBZU=(Stream #=zeIS55N0=, String #=zlcid8O8=, ICustomSecurityHandler #=znWLgMkjqjmiX, CertificateEncryptionOptions #=ztJk4YO3M2L70)
at Aspose.Pdf.Document..ctor(Stream input, String password)
at InvokeStub_Document..ctor(Object, Span`1)
at System.Reflection.MethodBaseInvoker.InvokeWithFewArgs(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zYcYgbjMB2YzksyWkWgrMYjTo3oS8(Object #=zPFJ6wXs=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zFMu3pjgfexOOP0JBmLtQDRTjvii5(Object #=zPFJ6wXs=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zgzvIc6ZdsiTU86GnAlG1RfXIsItTmQKn8UV8wKg=(#=qHQ7h9ksMgRZuXe5L3lVdA$jh3mf3GTphO8DG0_DQInM= #=zPFJ6wXs=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zet7byd3ALlbUFCeU55oPJ04HtGefTDM8zw==(dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd #=zPFJ6wXs=, #=qHQ7h9ksMgRZuXe5L3lVdA$jh3mf3GTphO8DG0_DQInM= #=zaoKv9xA=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zIOaiwawLX5bT92b6lP7bovioGT8q()
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zG4ZDZugn8SCHzwA3W4aPjmZKUA8E(Boolean #=zPFJ6wXs=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zYcYgbjMB2YzksyWkWgrMYjTo3oS8(Object #=zPFJ6wXs=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zFMu3pjgfexOOP0JBmLtQDRTjvii5(Object #=zPFJ6wXs=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zakfvUX3dCWMc7uzmnYltUmwoXitG()
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zvUXBiITN$NvDQ8VHx1G5qPNHD5w_ZowLBg==(dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd #=zPFJ6wXs=, #=qHQ7h9ksMgRZuXe5L3lVdA$jh3mf3GTphO8DG0_DQInM= #=zaoKv9xA=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zIOaiwawLX5bT92b6lP7bovioGT8q()
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zG4ZDZugn8SCHzwA3W4aPjmZKUA8E(Boolean #=zPFJ6wXs=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zYcYgbjMB2YzksyWkWgrMYjTo3oS8(Object #=zPFJ6wXs=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zFMu3pjgfexOOP0JBmLtQDRTjvii5(Object #=zPFJ6wXs=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zakfvUX3dCWMc7uzmnYltUmwoXitG()
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=z6knwFPouYtxHGUXsPQKmpVHlr$2tQdSoYnKz0Xg=(Object #=zPFJ6wXs=, UInt32 #=zaoKv9xA=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zG4ZDZugn8SCHzwA3W4aPjmZKUA8E(Boolean #=zPFJ6wXs=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zG4ZDZugn8SCHzwA3W4aPjmZKUA8E(Boolean #=zPFJ6wXs=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=z9dgL3A12mAiFKH3V3s8pPpSlvuylcisswwLuOdO5nIrd()
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=zjdnJvmU5vuy5Z8G3ml5giTznyMkhnzBysxQLkz9gNkkU(Object[] #=zPFJ6wXs=, Type[] #=zaoKv9xA=, Type[] #=zqxU$XeA=, Object[] #=zc3YBpYA=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=za0a_4_qZezm_ZR5wlJXuhU8qRr8vDd5bY7NMH2k=(Stream #=zPFJ6wXs=, String #=zaoKv9xA=, Object[] #=zqxU$XeA=, Type[] #=zc3YBpYA=, Type[] #=zklfAgz4=, Object[] #=zlOh4JeA=)
at dje_qRGUY4XJKKWEK7QXDSF6BD2CVXUCU29RY7QUC7G4RSMTN5SKDU3VA_ejd.#=z9YqOMZ0uTV2RIXkHBZrHwKM=(Stream #=zPFJ6wXs=, String #=zaoKv9xA=, Object[] #=zqxU$XeA=)
at Aspose.Pdf.DocumentFactory.CreateDocument(Stream input, String password)
at .(Stream , String )
at .()
at .()
--- End of inner exception stack trace ---
at ..(Exception )
at System.AggregateException.Handle(Func`2 predicate)
at .(CancellationToken )
at GroupDocs.Conversion.Converter.(CancellationToken )
at GroupDocs.Conversion.Converter.Convert(Func`2 convertOptionsProvider, Action`1 documentCompleted, CancellationToken cancellationToken)```