2008-10-10 24 views
9

Ich bin beauftragt, eine Outlook. MSG-Dateien aus XML-Dateien, die Metadaten zugeordnet haben, zu schreiben. Ich habe versucht, die Aspose-Bibliothek zu verwenden, aber alle angegebenen MapiMessage-Eigenschaften sind schreibgeschützt. Verwenden des Outlook-Objektmodells Ich kann das Erstellungsdatum und andere Eigenschaften, auf die ich zugreifen muss, nicht ändern. Ich habe auch die Rebex-Bibliothek ausprobiert, aber es exportiert nach EML und unterstützt RTF nicht.Erstellen einer Outlook MSG-Datei in C#

Meine Frage ist, gibt es eine Mapi oder eine Art, eine .MSG-Datei zu schreiben und Zugriff auf jede Eigenschaft haben?

+0

FWIW, könnte Outlook Redemption Lage sein, dies zu unterstützen, mit den "direkten" (zum Beispiel Nicht-Safe *) Klassen, die es macht. Es wird jedoch nur mit einigen Recheneigenschaften funktionieren. –

Antwort

3

Versuchen Sie RDOSession .CreateMessageFromMsgFile in Redemption zu verwenden. Sie werden zurück RDOMail Objekt erhalten; Alles, was Sie tun müssen, ist, setzen Sie alle Eigenschaften und rufen Sie RDOMail .Save.

Etwas nach dem Vorbild von

Redemption.RDOSession Session = new RDOSession(); 
    Redemption.RDOMail Msg = Session.CreateMessageFromMsgFile(@"c:\temp\YourMsgFile.msg"); 
    Msg.Sent = true; 
    Msg.Subject = "test"; 
    Msg.Body = "test body"; 
    Msg.Recipients.AddEx("the user", "[email protected]", "SMTP", rdoMailRecipientType.olTo); 
    Msg.Save();