Manage MS Contacts

Verimli iletişim yönetimi, profesyoneller ve işletmeler için hayati önem taşır. İhtiyacınız olduğunda doğru kişileri kolayca bulup onlarla bağlantı kurmanızı sağlar. Toplantıları planlarken, e-postalar gönderirken veya belgeler paylaşırken, düzenli ve güncel iletişim bilgilerine sahip olmak verimliliğinizi önemli ölçüde artırabilir.

MSG dosyaları, e-posta mesajlarını, iletişim bilgilerini ve diğer öğeleri depolamak için yaygın olarak kullanılan bir formattır. Outlook MSG dosyalarından iletişim bilgilerini programlı olarak çıkarmak, veri göçü veya otomatik veri işleme gibi çeşitli senaryolar için kritik bir görev olabilir. Bu makalede, Outlook MSG dosyalarından iletişim bilgilerini yüklemeyi, çıkarmayı ve kaydetmeyi keşfedeceğiz.

Gelişmiş C# API ile Başlayın

MSG dosyalarıyla çalışmak için Aspose.Email for .NET kullanacağız. Bu, geliştiricilere e-posta mesajları, görevler, takvimler, iletişimler ve .NET uygulamaları içinde çeşitli e-posta ile ilgili görevlerle çalışmak için kapsamlı bir araç ve işlev seti sunan güçlü ve çok yönlü bir e-posta işleme ve yönetim kütüphanesidir. Bu yüzden başlamadan önce, Aspose.Email’in projenizde yüklü ve referanslı olduğundan emin olun. Henüz yapmadıysanız, DLL’sini indirip ya da NuGet üzerinden yükleyebilirsiniz.

MSG Dosyalarından İletişim Yükleme

MSG dosyasından iletişim bilgilerini çıkarmak için, dosyayı Aspose.Email’in MapiMessage.Load yöntemi kullanarak bir MapiMessage nesnesine yüklememiz gerekir. Bir iletişimi MapiMessage’a yükleyebilir ve normal bir MAPI mesajı gibi işleyebilirsiniz: özellikleri okuyun, değiştirin, kaydedin, depoya ekleyin, gönderin. Aşağıdaki kod örneği, Outlook iletişimlerini yükleyip işlemenin nasıl yapılacağını gösterecektir:

  1. MapiMessage.Load yöntemini kullanarak bir MSG dosyasında mevcut bir iletişim öğesini yükleyin. Bu yöntem, belirtilen MSG dosyasının içeriğini okur ve e-posta mesajını temsil eden bir MapiMessage nesnesi oluşturur.
  2. İçeriği değiştirmek için SetBodyContent yöntemini kullanarak HTML gövde içeriğini ayarlayın.
  3. Sağlanan içeriğin HTML formatında olduğunu belirten BodyContentType.Html parametresini belirtin. Bu, içeriğin e-posta istemcileri tarafından görüntülendiğinde doğru bir şekilde HTML olarak yorumlanmasını sağlar.
  4. Değiştirilen MapiMessage nesnesini Save yöntemini kullanarak bir MSG dosyasına geri kaydedin.
var msg = MapiMessage.Load("Lynna M. Dyer.msg");
msg.SetBodyContent("<!DOCTYPE html><html><body><h1>Lynna M. Dyer</h1></body></html>", BodyContentType.Html);
msg.Save("Lynna M. Dyer.msg");

İletişim Bilgilerini Çıkartma

MSG dosyasını yükledikten sonra, MapiContact sınıfını kullanarak iletişim bilgilerini çıkartabiliriz. MapiContact, belirli iletişim alanlarına erişmek için kullanışlı özellikler sunar. Sağlanan kod örneği, bir MSG e-postasından iletişim bilgilerini çıkarmayı ve görüntülemeyi göstermektedir.

  1. MSG’nin bir iletişim öğesi olup olmadığını kontrol ederek başlayın. Outlook öğesinin türünü gösteren SupportedType özelliğini kullanın.
  2. msg nesnesini bir MapiContact nesnesine dönüştürün. Bu dönüşüm, iletişim öğelerine özgü özelliklere ve yöntemlere erişim sağlar.
  3. İletişim bilgilerini alıp görüntüleyin. Bu örnekte, MapiContact nesnesinin, iletişimin adı, e-posta adresi, şirket adı ve unvanını temsil eden DisplayName, Email, CompanyName ve Title özelliklerine erişiyoruz. Gereksinimlerinize göre MapiContact nesnesinin diğer özelliklerine de erişebilirsiniz.
if (msg.SupportedType == MapiItemType.Contact)
{
    var contact = (MapiContact)msg.ToMapiMessageItem();

    Console.WriteLine(contact.NameInfo.DisplayName);
    Console.WriteLine(contact.ElectronicAddresses.Email1);
    Console.WriteLine(contact.ProfessionalInfo.CompanyName);
    Console.WriteLine(contact.ProfessionalInfo.Title);
}

İletişim Fotoğrafını Kaydetme

Eğer MSG dosyası iletişimin bir fotoğrafını içeriyorsa, bu fotoğrafı bir dosyaya kaydedebiliriz:

  1. İletişimin bir fotoğrafı olup olmadığını kontrol edin. Bu, contact.Photo özelliğinin null olup olmadığını değerlendirerek yapılır.
  2. Eğer bir fotoğraf mevcutsa, kod ilerleyerek bunu bir dosya olarak kaydeder.
if (contact.Photo != null)
{
    System.IO.File.WriteAllBytes($"{contact.NameInfo.DisplayName}.{MapiContactPhotoImageFormat.Jpeg.ToString()}", contact.Photo.Data);
}

İletişimi VCF Olarak Kaydetme

Ayrıca, iletişimi MSG’den daha evrensel bir formata, örneğin VCARD‘a dönüştürmek sıklıkla gereklidir. VCard (Sanal İletişim Dosyası), iletişim bilgilerini depolamak için kullanılan standart bir dosya formatıdır. Aşağıdaki kod örneği, iletişim nesnesi tarafından temsil edilen bir iletişim öğesini VCard dosyası olarak kaydetmenin nasıl yapılacağını gösterir:

Kod, iletişim nesnesinin Save yöntemini kullanarak iletişimi VCard olarak kaydetme sürecini başlatır.

contact.Save("Lynna M. Dyer.vcf", ContactSaveFormat.VCard);

VCF’den İletişim Yükleme

Ayrıca mevcut bir VCARD dosyasını bir MapiContact nesnesine yükleyebilirsiniz. Aşağıdaki kod örneği, bir VCard’dan iletişim bilgilerini yüklemeyi ve bir MapiContact nesnesi oluşturmayı göstermektedir:

  1. Kod, MapiContact.FromVCard yöntemini kullanarak bir VCard’dan iletişim bilgilerini yükleyerek başlar.
  2. contact değişkeni, bu yeni oluşturulan MapiContact nesnesini tutar; bu nesne iletişimin ayrıntılarını programlı olarak erişmek ve manipüle etmek için kullanılabilir.
var contact = MapiContact.FromVCard("Lynna M. Dyer.vcf");

Sonuç

Bu makalede, Aspose.Email kullanarak Outlook MSG dosyalarından iletişim bilgilerini programlı olarak çıkarmayı keşfettik. MSG dosyasını yükleme, MapiContact sınıfını kullanarak iletişim bilgilerini çıkarma ve iletişimi farklı formatlarda kaydetme sürecini inceledik. Aspose.Email, MSG dosyaları ile çalışmayı kolaylaştırır ve e-posta verilerini yönetmek için geniş bir işlevsellik sunar.

Dosya yollarını değiştirerek ve kodu belirli gereksinimlerinize uyacak şekilde uyarlamayı unutmayın. Aspose.Email’in kapsamlı belgelendirmesi ve faydalı topluluk forumları, iletişim bilgilerini etkili bir şekilde çıkarmanız için yeteneklerini kullanmanıza yardımcı olacaktır.

Ayrıca Bakınız