Я использую стороннюю dll, которая конвертирует почту Outlook .msg в eml. Эта dll работает, как и ожидалось, для большинства электронных писем, которые я пытаюсь преобразовать. Но недавно я нашел письмо, которое не кодируется и не декодируется должным образом. Это письмо с некоторыми французскими акцентами и другими символами (но обычно все французские письма до сих пор хорошо конвертировались).
В результате .msg, преобразованный в eml, дает "?" вместо некоторых акцентов, а также в теле сообщения у меня есть несколько вхождений "\f0".
Я отправил то же сообщение .msg стороннему разработчику, который написал инструмент преобразования. Он загрузил ту же dll и смоделировал ту же последовательность преобразования, что и я, и получил другой результат (правильно преобразованный документ).
using System;
using Independentsoft.Msg;
namespace Sample
{
class Program
{
static void Main(string[] args)
{
Independentsoft.Msg.Message msgMessage = new Independentsoft.Msg.Message("c:\\test\\test.msg");
Independentsoft.Email.Mime.Message mimeMessage = msgMessage.ConvertToMimeMessage();
mimeMessage.Save("c:\\test\\test.eml");
}
}
}
Как это вообще отладить? Как это возможно, что он отлично работает на машине разработчика с использованием той же dll, а не на моей или клиентской?