Gestion des contacts dans les fichiers PST
Ajouter et enregistrer des contacts
Ajouter des contacts au PST
La section Création et gestion des fichiers PST montre comment créer un fichier PST et y ajouter un sous-dossier. Avec Aspose.Email, vous pouvez ajouter un MapiContact au sous-dossier Contacts d’un fichier PST que vous avez créé ou chargé. Voici les étapes pour ajouter un MapiContact à un PST :
- Créez un MapiContact objet.
- Définissez le Propriétés de MapiContact en utilisant différents constructeurs et méthodes.
- Créez un PST en utilisant le PersonalStorage.Create() méthode.
- Créez un dossier prédéfini (Contacts) à la racine du fichier PST en accédant au dossier racine puis en appelant le AddMapiMessageItem() méthode.
L’extrait de code suivant montre comment créer un MapiContact puis l’ajouter au dossier contacts d’un fichier PST nouvellement créé.
// Create three Contacts
var contact1 = new MapiContact("Sebastian Wright", "SebastianWright@dayrep.com");
var contact2 = new MapiContact("Wichert Kroos", "WichertKroos@teleworm.us", "Grade A Investment");
var contact3 = new MapiContact("Christoffer van de Meeberg", "ChristoffervandeMeeberg@teleworm.us", "Krauses Sofa Factory", "046-630-4614046-630-4614");
// Contact #4
var contact4 = new MapiContact{NameInfo = new MapiContactNamePropertySet("Margaret", "J.", "Tolle")};
contact4.PersonalInfo.Gender = MapiContactGender.Female;
contact4.ProfessionalInfo = new MapiContactProfessionalPropertySet("Adaptaz", "Recording engineer");
contact4.PhysicalAddresses.WorkAddress.Address = "4 Darwinia Loop EIGHTY MILE BEACH WA 6725";
contact4.ElectronicAddresses.Email1 = new MapiContactElectronicAddress("Hisen1988", "SMTP", "MargaretJTolle@dayrep.com");
contact4.Telephones.BusinessTelephoneNumber = "(08)9080-1183";
contact4.Telephones.MobileTelephoneNumber = "(925)599-3355(925)599-3355";
// Contact #5
var contact5 = new MapiContact{NameInfo = new MapiContactNamePropertySet("Matthew", "R.", "Wilcox")};
contact5.PersonalInfo.Gender = MapiContactGender.Male;
contact5.ProfessionalInfo = new MapiContactProfessionalPropertySet("Briazz", "Psychiatric aide");
contact5.PhysicalAddresses.WorkAddress.Address = "Horner Strasse 12 4421 SAASS";
contact5.Telephones.BusinessTelephoneNumber = "0650 675 73 300650 675 73 30";
contact5.Telephones.HomeTelephoneNumber = "(661)387-5382(661)387-5382";
// Contact #6
var contact6 = new MapiContact
{
NameInfo = new MapiContactNamePropertySet("Bertha", "A.", "Buell"),
ProfessionalInfo = new MapiContactProfessionalPropertySet("Awthentikz", "Social work assistant")
};
contact6.PersonalInfo.PersonalHomePage = "B2BTies.com";
contact6.PhysicalAddresses.WorkAddress.Address = "Im Astenfeld 59 8580 EDELSCHROTT";
contact6.ElectronicAddresses.Email1 = new MapiContactElectronicAddress("Experwas", "SMTP", "BerthaABuell@armyspy.com");
contact6.Telephones = new MapiContactTelephonePropertySet("06605045265");
using (PersonalStorage personalStorage = PersonalStorage.Create("SampleContacts_out.pst", FileFormatVersion.Unicode))
{
var contactFolder = personalStorage.CreatePredefinedFolder("Contacts", StandardIpmFolder.Contacts);
contactFolder.AddMapiMessageItem(contact1);
contactFolder.AddMapiMessageItem(contact2);
contactFolder.AddMapiMessageItem(contact3);
contactFolder.AddMapiMessageItem(contact4);
contactFolder.AddMapiMessageItem(contact5);
contactFolder.AddMapiMessageItem(contact6);
}
Enregistrer les contacts au format MSG
Cet article explique comment accéder aux informations de contact d’un fichier PST Outlook et enregistrer le contact sur le disque au format MSG. Les étapes pour obtenir les informations de contact sont :
- Charger le fichier PST dans le PersonalStorage objet.
- Parcourir le dossier Contacts.
- Obtenez le contenu du dossier Contacts en parcourant les messages.
- Vérifiez que le MessageInfo.MessageClass la valeur de la propriété correspond à "IPM.Contact".
- Appelez le PersonalStorage.ExtractMessage() méthode pour obtenir le MapiMessage objet.
- Appelez la méthode MapiMessage.Save() pour enregistrer le contact sur le disque au format MSG.
L’extrait de code suivant vous montre comment récupérer toutes les informations de contact du fichier PST et les enregistrer sur le disque au format MSG.
// Load the Outlook PST file
var pst = PersonalStorage.FromFile("SampleContacts.pst");
// Get the Contacts folder
var contactsFolder = pst.RootFolder.GetSubFolder("Contacts");
// Loop through all the contacts in this folder
foreach (MessageInfo messageInfo in contactsFolder.EnumerateMessages())
{
if (messageInfo.MessageClass == "IPM.Contact")
{
// Get the contact information
var msg = pst.ExtractMessage(messageInfo);
// Save to disk in msg format
string contactName = msg.Subject.Replace(":", " ").Replace("\\", " ").Replace("?", " ").Replace("/", " ");
msg.Save($"{contactName}.msg", SaveOptions.DefaultMsgUnicode);
}
}
Enregistrer les contacts au format VCF
Cet article montre comment accéder aux informations de contact d’un fichier PST Microsoft Outlook et enregistrer le contact sur le disque au format vCard (VCF). Utilisez le PersonalStorage et MapiContact classes pour obtenir les informations de contact à partir du fichier PST. Pour obtenir les informations de contact :
- Charger le fichier PST dans le PersonalStorage classe.
- Parcourir le dossier Contacts.
- Obtenez le contenu du dossier Contacts en parcourant les messages.
- Vérifiez que le MessageInfo.MessageClass la valeur de la propriété correspond à "IPM.Contact".
- Appelez le PersonalStorage.ExtractMessage() méthode pour obtenir le MapiMessage objet.
- Appelez le MapiMessage.ToMapiMessageItem() et convertir le IMapiMessageItem à MapiContact type.
- Appelez le MapiContact.Save() méthode pour enregistrer le contact sur le disque au format VCard.
Le programme ci‑dessous charge un fichier PST depuis le disque et enregistre tous les contacts au format vCard (VCF). Les fichiers VCF peuvent ensuite être utilisés dans tout autre programme capable de charger le fichier de contact vCard standard. Si vous ouvrez un fichier VCF dans Microsoft Outlook, il ressemble à celui présenté dans la capture d’écran ci‑dessous.
![]() |
|---|
L’extrait de code suivant montre comment exporter les contacts d’Outlook PST au format vCard (VCF).
// Load the Outlook PST file
var pst = PersonalStorage.FromFile("SampleContacts.pst");
// Get the Contacts folder
var contactsFolder = pst.RootFolder.GetSubFolder("Contacts");
// Loop through all the contacts in this folder
foreach (MessageInfo messageInfo in contactsFolder.EnumerateMessages())
{
if (messageInfo.MessageClass == "IPM.Contact")
{
// Get the contact information
var msg = pst.ExtractMessage(messageInfo);
var contact = (MapiContact)msg.ToMapiMessageItem();
// Display some contents on screen
Console.WriteLine("Name: " + contact.NameInfo.DisplayName);
// Save to disk in VCard format
string contactName = contact.Subject.Replace(":", " ").Replace("\\", " ").Replace("?", " ").Replace("/", " ");
contact.Save($"{contactName}.vcf", ContactSaveFormat.VCard);
}
}
Voir aussi : Gestion des listes de distribution dans les fichiers PST
