MBOX naar PST converteren
MBOX naar PST converteren. Basisconversie
Bij het migreren van mailgegevens van clients zoals Mozilla Thunderbird naar Microsoft Outlook is het vaak nodig om MBOX‑archieven naar het PST‑formaat (Personal Storage Table) te converteren. Het PST‑formaat is native voor Outlook en Exchange en ondersteunt geavanceerde functies zoals mapstructuren en MAPI‑gebaseerde berichtafhandeling.
Aspose.Email voor .NET stelt ontwikkelaars in staat om handmatig berichten van MBOX‑bestanden over te zetten naar Outlook‑compatibele opslag met volledige controle over het conversieproces. Hieronder staat een voorbeeld dat laat zien hoe berichten uit een MBOX‑archief te laden en op te slaan in een gestructureerd Outlook‑databestand:
- Initialiseer de MBOX‑lezer met behulp van MboxStorageReader.CreateReader().
- Genereer een PST‑bestand met behulp van PersonalStorage.Create().
- Voeg een mailmap toe (bijv. “Inbox”) aan de opslag.
- Loop door elk bericht, converteer het naar een MapiMessage, en voeg het toe aan de map.
// Load the source file
var mbox = MboxStorageReader.CreateReader(mboxFilePath, new MboxLoadOptions());
// Create the destination Outlook data file
using (var personalStorage = PersonalStorage.Create(pstFilePath, FileFormatVersion.Unicode))
{
// Add a folder to hold imported messages
var folderInfo = personalStorage.CreatePredefinedFolder("Inbox", StandardIpmFolder.Inbox);
// Process each message from the source file
foreach (var eml in mbox.EnumerateMessages())
{
var msg = MapiMessage.FromMailMessage(eml);
folderInfo.AddMessage(msg);
}
}
Digitale handtekeningen verwijderen tijdens conversie
In sommige gevallen zijn digitale handtekeningen die in berichten zijn ingebed niet nodig in het doelbestand. Om ze tijdens de overdracht uit te sluiten, stel de RemoveSignature eigenschap in de MboxToPstConversionOptions naar true.
De volgende code‑voorbeeld toont hoe deze eigenschap gebruikt kan worden:
var pstDataStream = new MemoryStream();
var personalStorage = PersonalStorage.Create(pstDataStream, FileFormatVersion.Unicode);
MailStorageConverter.MboxToPst(new MboxrdStorageReader(new FileStream(fileName, FileMode.Open, FileAccess.Read), new MboxLoadOptions()),
personalStorage,
"Inbox",
new MboxToPstConversionOptions() { RemoveSignature = true });