Satır İçi ve Normal Ekler Arasındaki Ayrım

Bir e-posta mesajının gövdesinde satır içi görüntüler ve buna ek olarak normal ekler bulunması yaygın bir senaryodur. Kullanarak MailMessage sınıf, satır içi ekler şu sınıftan çıkarılabilir: LinkedResourceCollection sınıf, normal ekler ise şu sınıfla erişilebilir/çıkarılabilir: AttachmentCollection mesaj sınıfı. Ancak, mesaj Aspose.Email.Mapi.MapiMessage sınıfı kullanılarak yüklendiğinde durum farklıdır; satır içi görüntüler ve normal ekler aynı MapiAttachmentCollection sınıfında kullanıcıya erişilebilir olur. Bu nedenle, MapiMessage kullanıldığında satır içi ve normal ek arasında ayrım yapabilen bir yöntem geliştirmek gerekir.

Satır İçi ve Normal Ekleri Ayırmak için Aspose.Email Kullanımı

Bu makale, MapiMessage kullanarak satır içi ekleri normal eklerden nasıl ayıracağınızı açıklar. Bu ayrımı belirlemek için MapiMessage’ın gövde tipi aşağıdaki gibi dikkate alınır:

Düz Metin Gövde: Düz metin gövde tipine sahip e-posta mesajları kontrol edilmez, çünkü bu tür mesajlardaki tüm ekler her zaman normal eklerdir.

Html Gövde: HTML gövde tipine sahip bir mesajda ek, sadece PR_ATTACH_FLAGS (0x37140003) özelliğini içermekle kalmamalı, aynı zamanda satır içi ekler için değeri 0x00000004 olmalıdır. Bu koşul sağlanırsa, ekin niteliği belirlemek için PR_ATTACH_CONTENT_LOCATION ve PR_ATTACH_CONTENT_ID etiketlerine de bakılır. Ancak, PR_ATTACH_FLAGS Mapi etiketi yoksa, ekin tipini belirlemek için PR_ATTACH_DISPOSITION (0x3716001F veya 0x3716001E) özelliği kontrol edilir.

Rtf Gövde: Gövde RTF ise, tüm OLE ekleri satır içi eklerdir. Tüm OLE ekleri için PR_ATTACH_METHOD değeri 0x00000006’ya eşittir.

Aşağıdaki kod örneği, satır içi ve normal ekler arasında programatik olarak ayrım yapmayı göstermektedir. IsInlineAttachment fonksiyonu, bir eki ve Mesaj BodyType’ını girdi parametresi olarak alır ve ek satır içi bir ek ise true döndürür.