1. Προϊόντα
  2.   Aspose.Email
  3.   Aspose.Email FOSS for .NET

Aspose.Email FOSS for .NET

Διαβάστε, δημιουργήστε και επεξεργαστείτε αρχεία Outlook MSG, δοχεία CFB και μηνύματα EML από .NET — δωρεάν και ανοιχτού κώδικα, χωρίς εξάρτηση από το Microsoft Outlook.

Λιβυκή .NET ανοιχτού κώδικα για αρχεία MSG, CFB και EML

Το FOSS για το .NET είναι μια βιβλιοθήκη C# χωρίς εξάρτηση με άδεια MIT, που λειτουργεί με αρχεία Microsoft Outlook .msg , περιέκτες Compound File Binary (CFB) και μηνύματα EML. Προσθέστε ένα μόνο πακέτο NuGet και ξεκινήστε αμέσως την ανάγνωση, τη δημιουργία και επεξεργασία μηνυμάτων ηλεκτρονικού ταχυδρομείου χωρίς να εγκαταστήσετε το Microsoft Excel ή οποιοδήποτε ιδιόκτητο χρόνο εκτέλεσης.

Η βιβλιοθήκη παρέχει δύο επίπεδα πρόσβασης. Στο χαμηλό επίπεδο, το CfbReader και τοCfbWriter δίνουν πλήρη έλεγχο πάνω σε δυαδικά περιέκτες CFB διαδρομικές καταχωρίσεις κατάλογος, διαβάζουν και γράφουν σημεία αποθήκευσης και δεδομένα ροής, και επιθεωρούν την πρώτη διάταξη του τομέα. Το MsgReader και MsgWriter χειρίζονται τη μορφή MSG στην κορυφή της CF B, εκθέτοντας τις ροές ιδιοκτησίας MAPI, τα πίνακα παραλήπτη και τις υπο-θεματολογίες προσαρτήσεων. στο υψηλό livello, η MapiMessage σας επιτρέπει να δημιουργείτε νέα μηνύματα από την αρχή, να διαβάζετε, κείμενο, αποστολέα και λήπτες, διαχείριση συνημάτων, μετατροπή μεταξύ MS G και μορφότυπου EMLIME μέσω ενσωματωμένης εφαρμογής MIME.

Η βιβλιοθήκη στοχεύει σε .NET 8.0 ή νεότερη και δεν έχει εγγενείς εξαρτησίες, καθιστώντας την κατάλληλη για Windows, Linux, macOS, Docker containers και λειτουργίες χωρίς διακομιστή. Για πρόσθετα χαρακτηριστικά και εμπορική υποστήριξη, δείτε Aspose.Email for .NET.

CFB Container Διαβάστε και γράψτε

  • ** Ανοίξτε αρχεία CFB:** Φορτώστε υπάρχοντα περιέκτες CF B από μια διαδρομή αρχείου, ροή ή πίνακα byte μέσω CfbReader.FromFile(), CfbReader.FromStream() ή new CfbReader(data).
  • Περπατήστε το δέντρο καταλόγου: Επαναλαμβάνετε αποθηκεύσεις, ροές και παιδιά χρησιμοποιώντας IterStorages(), IterStreams(),IterChildren() και IterTree().
  • Διαλύστε οδούς: Επικοινωνήστε με τις ιεραρχίες αποθήκευσης που έχουν ενσωματωθεί χρησιμοποιώντας το ResolvePath(names) για να εντοπίσετε μια συγκεκριμένη ροή βάσει της αλυσίδας ονομάτων.
  • Γράψτε CFB περιέκτες: Δημιουργήστε έγγραφα CF B προγραμματικά με CfbDocument και serialize σε bytes ή αρχείο μέσω CfbWriter.ToBytes() ή CfbWriter.WriteFile().
  • ** Προσθήκη αποθηκευτικών χώρων και ροών:** Συνδέστε τους κόμβους CfbStorage και CfbStream σε οποιονδήποτε κόμμα αποθήκευσης πριν από τη σειριακή χρήση.

Όπου χρησιμοποιείται η πρόσβαση CFB

  • Ελέγχος αρχείου MSG: Το CFB είναι η μορφή περιέκτη για τα αρχεία Outlook .msg Η άμεση πρόσβαση στο CF B επιτρέπει τη δικαστική εξέταση και επισκευή.
  • Διαχωρημένες δυαδικές μορφές: Οποιοδήποτε παλαιό πρόγραμμα που χρησιμοποιεί CFB για την αποθήκευση δεδομένων μπορεί να διαβάζεται ή να γραφτεί χωρίς εξάρτηση COM.
  • Ανακάλυψη δεδομένων: Διαδρομή στο πλήρες δέντρο καταλόγου και εξαγωγή ωρών bytes ροής από κατεστραμμένα ή μη-προτυποποιημένα αρχεία CFB.
  • Δυαδική δοκιμή στροφής: Επανακατατάσταση σε κυψέλες ενός εγγράφου και επαναφόρτωση του για να επαληθεύσει την αχρηστερή καταχώριση σε αυτοματοποιημένες δοκιμές.

Αρχείο MSG Διαβάστε και γράψτε

  • Διαβάστε αρχεία MSG: Ανοίξτε τα αρχείο Outlook MS G με το MsgReader.FromFile() ή τοMsgReader.FromStream() και αποκτήστε πρόσβαση στις υποκείμενες ροές ιδιοτήτων MAPI, στα αρχικά των παραλήπτες και τις υπο αποθηκευτικές μονάδες συνημμάτων.
  • Γράψτε αρχεία MSG: Παρήγαγε τα αρχείο MS G από ένα MsgDocument με το MsgWriter.ToBytes() ή τοMsgWriter.WriteFile().
  • Πρόσβαση MAPI χαμηλού επιπέδου: Διαβάστε ροές ιδιότητας ανώτερου επιπεδίου, ονομαζόμενες ιδιωτικές ιδρύσεις και δεδομένα προσαρτήσεων μέσω MsgStorage, MsgStream και MsgStorage.FindStream().
  • Ναυτιλία αποθήκευσης MSG: Χρησιμοποιήστε MsgStorage.FindStream() και MsgStorage.FindStorage() για να εντοπίσετε τις ονομασμένες υποεντολές.

Όπου χρησιμοποιείται η επεξεργασία του MSG

  • Τα αγωγά αρχειοθέτησης ηλεκτρονικού ταχυδρομείου: Τα αρχεία .msg που διαβάζονται κατά μάζα από καταλόγους αρχείων και εκχύνονται μεταδεδομένα ή συνημμένα.
  • Μεθόδους μεταφοράς: Μετατρέψτε συλλογές MSG σε τυποποιημένες μορφές για εισαγωγή σε συστήματα εκτός του Outlook.
  • Νομική ανακάλυψη: Αναλύστε τις ροές ιδιότητας MAPI για να εξαγάγετε όλα τα πεδία μηνυμάτων, συμπεριλαμβανομένων των μη-προτυποποιημένων ιδιοτήτων.
  • Αυτοματοποιημένη παράδοση αναφορών: Κατασκευή .msg αρχείων προγραμματικά και διαβίβαση τους σε συστήματα ταχυδρομείου με βάση το Outlook.

API μηνυμάτων υψηλού επιπέδου

  • ** Δημιουργήστε μηνύματα:** Δημήσατε ένα πλήρες email με το MapiMessage.Create(subject, body), ορίστε τα settings SenderName, SenderEmailAddress και HtmlBody.
  • ** Προσθήκη παραλήπτες:** Παράλληλα επισυνάψτε τους To, Cc και Bcc αποδέκτες μέσω του AddRecipient() με τη διεύθυνση ηλεκτρονικού ταχυδρομείου και το όνομα προβολής.
  • ** Διαχείριση συνημμένων:** Προσθήκη συστημάτων αρχείων και ροής με το AddAttachment() ή κατασκευή αντικειμένων MapiAttachment απευθείας με τα Filename, MimeType , ContentId και Data.
  • ** Αποθηκεύστε και επαναφορτώστε:** Συριακά με message.Save() ή message.Save(stream) και επανειλημμένα με το MapiMessage.FromFile() η τοMapiMessage.FromStream().

Πού χρησιμοποιείται το API υψηλού επιπέδου

  • Αυτοματοποιημένη δημιουργία email: Δημιουργήστε χιλιάδες εξατομικευμένα αρχεία MSG από εγγραφές δεδομένων σε εργασίες batch.
  • Δημιουργία δοκιμαστικού fixture: Κατασκευάστε γνωστά-καλά αρχεία MSG με προβλέψιμο περιεχόμενο για σύνολα ενσωματωμένων δοκιμών.
  • Εξαγωγή συνημμένων: Φορτώστε ένα αρχείο MSG, επαναλάβετε message.Attachments, και αποθηκεύστε κάθε attachment.Data στο δίσκο.
  • Έλεγχος ιδιοτήτων: Πρόσβαση σε message.Subject, message.Body, message.SenderEmailAddress και message.Recipients χωρίς αυτοματοποίηση COM.

Μετατροπή EML και MIME

  • Load EML into MapiMessage: Αναλύστε ένα τυποποιημένο αρχείο .eml (RFC 5322 / MIME) σε πλήρες αντικείμενο MapiMessage μέσω του MapiMessage.LoadFromEml(stream).
  • ** Αποθηκεύστε το MapiMessage ως EML:** Συριαμοποιήστε ένα MapiMessage πίσω στο μορφότυπο MIME με το message.SaveToEml() ή τοmessage.SaveToEml(stream).
  • Πιστοσύνη στρογγυλής επιστροφής: Το αντικείμενο, το σώμα, η μορφή HTML, ο αποστολέας, οι παραλήπτες και τα συνημμένα αρχεία διατηρούνται όλα μέσω EML → MSG → EM L στρεγγίμων επισκέψεων.
  • Δεν υπάρχει εξωτερικός αναλυτής MIME: Η διεύθυνση EML εφαρμόζεται εγγενώς εντός της βιβλιοθήκης δεν απαιτείται εξαρτησία System.Net.Mail.

Όπου χρησιμοποιείται η μετατροπή EML

  • Συνοδετική διαμόρφωση μορφών: Παραλαβή μηνυμάτων ηλεκτρονικού ταχυδρομείου ως EML από τους διακομιστές αλληλογραφίας και μετατροπή σε MSG για αποθήκευση συμβατή με το Outlook.
  • Συμμόρφωση με τα πρότυπα: Μετατρέψτε ιδιόκτητα αρχεία MSG σε τυποποιημένο MIME για παράδοση σε οποιαδήποτε μεταφορά αλληλογραφίας.
  • Συνημόρφωση αρχείων: Σιναμοποιήστε ένα μικτό αρχείο .eml και .msg σε μία ενιαία μορφή.
  • Προοδεύσεις εργασίας δοκιμών: Δημιουργήστε τοποθεσίες .eml σε δοκιμές και επαληθεύστε ότι επιβιώνουν από την MSG χωρίς απώλεια δεδομένων.

Διαβάστε θέμα από αρχείο MSG

Ανοίξτε ένα αρχείο MSG του Outlook από μια ροή και εκτυπώστε το θέμα δεν απαιτείται Microsoft Outlook.

using System.IO;
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("sample.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);

Δημιουργία και αποθήκευση μηνύματος MSG

Δημιουργήστε ένα πλήρες email με τον αποστολέα, τον παραλήπτη και το συνημμένο αρχείο, στη συνέχεια γράψτε το σε ένα αρχεία MSG.

using System.IO;
using Aspose.Email.Foss.Msg;
var message = MapiMessage.Create("Hello", "Body");
message.SenderName = "Alice";
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
using var attachmentStream = new MemoryStream("abc"u8.ToArray());
message.AddAttachment("note.txt", attachmentStream, "text/plain");
using var output = File.Create("hello.msg");
message.Save(output);

Μετατρέψτε το EML σε MSG

Εισάγετε ένα τυποποιημένο αρχείο .eml και αποθηκεύστε το ως αρχεία Outlook .msg χρησιμοποιώντας τον ενσωματωμένο αναλυτή MIME.

using System.IO;
using Aspose.Email.Foss.Msg;
using var input = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(input);
using var msgOutput = File.Create("message.msg");
message.Save(msgOutput);
using var emlOutput = File.Create("roundtrip.eml");
message.SaveToEml(emlOutput);
  

Υποστήριξη και Πόροι Μάθησης

 Ελληνικά