الأسئلة الشائعة
Question
مرحبًا! بالنسبة للكود التالي:
Aspose.Email.Mime.ContentType ct = new Aspose.Email.Mime.ContentType();
ct.MediaType = "application/msword";
ct.CharSet = "ISO-2022-JP";
Attachment att = new Attachment("Test.doc", ct);
Console.WriteLine(att.ContentType.Name);
يقوم att.ContentType.Name بإرجاع اسم المستند المرفق. هل هذا سلوك متوقع؟
الإجابة: نعم، هذا سلوك متوقع. إذا لم يتم تعيين ContentType.Name صراحةً، فسيُؤخذ اسم الملف كاسم.
سؤال:
لماذا تجعل الدالة ExchangeWebServiceClient.FetchMessage الصور المضمنة كملفات مرفقة؟
الإجابة: خادم Microsoft Exchange يملك هذه الوظيفة كـ ‘تحويل المحتوى، وهي عملية تنسيق الرسالة بشكل صحيح لكل مستلم. يعتمد اتخاذ قرار تحويل المحتوى في رسالة ما على وجهتها وتنسيق الرسالة الجاري معالجتها.
بمعنى آخر، بالنسبة للعملاء غير المعروفين، يمكن للخادم تنسيق الرسالة وفقًا لإعدادات الخادم (لاختيار الأنسب). كما تعلم، التنسيق الأكثر شمولًا لأي عميل هو ’text/plain’ وهذه الإعدادات قابلة للتكوين على الخادم.
يرجى الملاحظة: Outlook هو عميل بريد إلكتروني معروف لخادم Microsoft Exchange (في حال كان لدى MS Outlook إصدار أقدم من الخادم). هذا يعني أن خادم Exchange يمرّر تنسيق الرسالة وفقًا لإمكانات Outlook. في حالتنا عندما يحاول ExchangeWebServiceClient جلب الرسالة، إمكانات مكوّناتنا غير معروفة لـ MS Exchange. يقوم الخادم بتمرير الرسالة إلى المكوّنات بأبسط تنسيق (text/plain). بمعنى آخر، لا توجد أجزاء HTML في استجابة الخادم. في هذه الحالة تُضمّن الصور في الرسالة كمرفقات.
هناك طريقة لتجنب المشكلة الموصوفة. إذا كان للرسالة على الخادم عنوان Content-Type: multipart/alternative وكان أحد أجزائها text/plain، فإن الرسالة تُرسل إلى العميل كما هي. تُظهر الصور في جسم الرسالة لأن الرسالة تحتوي أيضًا على جزء HTML. في السيناريو الحالي، تُضاف الرسالة إلى MS Exchange بمساعدة MS Outlook وبالتالي فإن Content-Type للرسالة ليس ‘multipart/alternative’. وبالتالي نواجه مشكلة عند محاولة جلب الرسالة. على سبيل المثال، إليكم عينات لمشكلات مماثلة: الأولى (http://support.risualblogs.com/blog/2011/02/24/html-mails-sent-via-owa-and-outlook-2011-are-received-as-plain-text-mails-externally/), الثانية (http://forums.mozillazine.org/viewtopic.php?f=39&t=628678), الثالثة (http://stackoverflow.com/questions/4681798/how-do-i-send-html-multipart-alternative-from-exchange-web-services-2010-sp1). خلاصة القول، الوضع الموصوف في المسألة (الصور المُضمَّنة في الرسالة كمرفقات) ليس خطأًا في مكوّنات Aspose. إنه ميزة خاصة بخادم Exchange.
Question: كيف يمكنني استخراج البيانات من المرفق "oleData.mso" الذي أحصل عليه نتيجة قراءة MapiMessage يحتوي على كائن OLE مدمج؟
Answer: الملفات مثل "oleData.mso" تشير إلى تنسيق ملف Microsoft Compound Document (MCDF) وغير ذلك، للأسف، دعم هذه الملفات خارج نطاق Aspose.Email. ومع ذلك، هناك بعض مكتبات .NET مفتوحة المصدر، مثل OpenMCDF، والتي يمكن استخدامها لقراءة محتويات هذه الملفات لحفظها على القرص.
Question: هل يمكننا الكتابة إلى ملف PST نفسه في خيوط متوازية باستخدام نفس الكائنات؟
Answer: لا، لا يتم ضمان أمان الخيوط في هذه الحالة. يجب كتابة الرسائل في خيط واحد. ومع ذلك، يجب أن يعمل المنتج بشكل صحيح مع كائنات مختلفة من خيوط مختلفة.