
تعتبر ملفات PST (جدول التخزين الشخصي) مكونًا حيويًا لإدارة بيانات Outlook، مما يسهل التخزين للبريد الإلكتروني، وجهات الاتصال، والتقويمات، وغيرها من العناصر. في مجال تطوير C# .NET، تعتبر عملية إنشاء وإدارة ملفات التخزين أمرًا بالغ الأهمية لمجموعة متنوعة من التطبيقات.
في هذه المقالة، سنستكشف كيفية إنشاء ملفات PST باستخدام C# .NET. سنغطي إنشاء تخزين PST فارغ، وإضافة مجلدات ومجلدات فرعية، ودمج المجلدات القياسية والعادية، وأخيرًا، إضافة رسائل البريد الإلكتروني وعناصر Outlook إلى ملف PST.
API C# لإنشاء وملء ملفات PST
للتعامل مع ملفات التخزين بتنسيق PST في C#، سنستخدم Aspose.Email for .NET. تم تصميم هذه المكتبة الشاملة لمطوري .NET، حيث تقدم أدوات قوية لمعالجة البيانات المتعلقة بالبريد الإلكتروني. مع واجهات برمجة التطبيقات البديهية، يمكن للمطورين بشكل سهل إنشاء، قراءة، والتلاعب بهياكل تخزين PST، بما في ذلك إضافة مجلدات ومجلدات فرعية، ومجلدات Outlook القياسية. تسهل المكتبة معالجة رسائل البريد الإلكتروني من خلال توفير وظائف لتحليل، إنشاء، إرسال، استقبال، وتحويل رسائل البريد الإلكتروني عبر تنسيقات مختلفة مثل MSG، EML، وMHTML. تمكّن Aspose.Email المطورين من إدارة مهام البريد الإلكتروني بكفاءة داخل تطبيقاتهم .NET، مما يعزز الوظائف والأداء مع تقديم قدرات معالجة البريد الإلكتروني المتميزة للمستخدمين النهائيين.
للاستفادة من قوة API، يمكنك إما تنزيل ملف DLL الخاص بها أو تثبيته من NuGet باستخدام الأمر التالي:
PM> Install-Package Aspose.Email
إنشاء تخزين PST فارغ الحد الأدنى
للبدء، دعونا ننشئ تخزين شخصي فارغ. يتضمن ذلك تهيئة ملف PST بدون أي عناصر. ستظهر لك عينة التعليمات البرمجية أدناه كيفية إعداد الهيكل الأساسي لملف جديد يسمى “sample.pst” مع إصدار تنسيق ملف Unicode. لإنشاء ملف PST جديد، استخدم طريقة PersonalStorage.Create.
// Initialize the PersonalStorage instance | |
using (var pst = PersonalStorage.Create("sample.pst", FileFormatVersion.Unicode)) | |
{ | |
// Add your code for further operations | |
} |
ملاحظة: الحد الأدنى لحجم PST هو 256 كيلوبايت، ويحتوي على مجلد جذر ومجلد العناصر المحذوفة.
إضافة مجلدات ومجلدات فرعية
بمجرد أن يكون لدينا تخزين PST فارغ، فإن الخطوة التالية هي إضافة مجلدات ومجلدات فرعية لتنظيم بياناتنا بكفاءة. ضع في اعتبارك الأقسام الفرعية التالية وجرب عينات التعليمات البرمجية التالية لتنفيذ المهمة.
إضافة مجلدات قياسية
إضافة مجلدات قياسية مثل البريد الوارد، البريد الصادر، العناصر المرسلة، المسودات، إلخ، أمر مباشر مع Aspose.Email. توضح عينة التعليمات البرمجية التالية كيفية إنشاء مجلد جديد يسمى “البريد الوارد” داخل ملف PST يسمى “sample.pst”. تستخدم التعليمات البرمجية فئة PersonalStorage لفتح ملف PST ثم تستدعي طريقة CreatePredefinedFolder() لإنشاء مجلد قياسي للعناصر الواردة. يتم إنشاء المجلد باستخدام نوع المجلد المحدد مسبقًا StandardIpmFolder.inbox، والذي يمثل عادةً مجلد البريد الوارد في عملاء البريد الإلكتروني.
- قم بتهيئة كائن PersonalStorage جديد.
- استخدم طريقة CreatePredefinedFolder لكائن PersonalStorage (pst) لإنشاء مجلد قياسي باسم “البريد الوارد” مع تحديد نوع المجلد StandardIpmFolder.Inbox للإشارة إلى أنه مجلد البريد الوارد.
using (var pst = PersonalStorage.Create("sample.pst", FileFormatVersion.Unicode)) | |
{ | |
// Create a standard folder (Inbox) | |
var inboxFolder = pst.CreatePredefinedFolder("Inbox", StandardIpmFolder.Inbox); | |
} |
تتضمن القائمة التالية المجلدات القياسية التي يمكن إضافتها إلى ملف PST جديد:
- البريد الوارد
- العناصر المرسلة
- التقويم
- جهات الاتصال
- الملاحظات
- المهام
- مشكلات المزامنة
- البريد العشوائي
- تغذيات RSS
إضافة مجلدات عادية
بالإضافة إلى المجلدات القياسية، غالبًا ما يقوم المستخدمون بإنشاء مجلدات مخصصة بأسماء محددة لتنظيم رسائل بريدهم الإلكتروني بشكل أفضل. توضح عينة التعليمات البرمجية التالية كيفية إضافة مجلد مخصص إلى جذر ملف PST.
- قم بتهيئة كائن PersonalStorage جديد.
- استخدم طريقة AddSubFolder الخاصة بممتلكات RootFolder لكائن PersonalStorage لإنشاء مجلد مخصص.
بعد إنشاء “المجلد المخصص”، يمكنك استخدام طريقة AddSubFolder مرة أخرى لإنشاء مجلدات فرعية داخلها. قدم الاسم المطلوب للمجلد الفرعي كمعامل لطريقة AddSubFolder.
using (var pst = PersonalStorage.Create("sample.pst", FileFormatVersion.Unicode)) | |
{ | |
// Create a custom folder | |
var someFolder = pst.RootFolder.AddSubFolder("SomeFolder"); | |
// Create a subfolder to the "Custom Folder" | |
var subFolder = customFolder.AddSubFolder("SubFolder"); | |
} |
إضافة رسائل بريد إلكتروني وعناصر Outlook
مع وجود الهيكل في مكانه، يمكننا الآن ملء ملف PST الخاص بنا برسائل البريد الإلكتروني وعناصر Outlook الأخرى. يتضمن ذلك إنشاء رسائل بريد إلكتروني، مواعيد، جهات اتصال، مهام، وأكثر، وإضافتها إلى المجلدات المناسبة داخل الملف. دعونا نعتبر بعض الأمثلة.
إضافة رسائل بريد إلكتروني جديدة
ستظهر لك عينة التعليمات البرمجية أدناه كيفية إضافة رسالة بريد إلكتروني جديدة إلى مجلد “البريد الوارد” داخل ملف PST. تتضمن التعليمات البرمجية الخطوات التالية:
- قم بتهيئة كائن PersonalStorage جديد.
- استرجع مجلد البريد الوارد باستخدام طريقة GetSubFolder على خاصية RootFolder لكائن PersonalStorage.
- أنشئ كائنًا جديدًا من MapiMessage.
- استخدم طريقة AddMessage على كائن inboxFolder لإضافة الرسالة التي تم إنشاؤها حديثًا (message) إلى مجلد البريد الوارد.
using (var pst = PersonalStorage.Create("sample.pst", FileFormatVersion.Unicode)) | |
{ | |
// Access the folder to add items | |
var inboxFolder = pst.RootFolder.GetSubFolder("Inbox"); | |
// Create a new message | |
var message = new MapiMessage("from@example.com", "to@example.com", "Subject", "Body"); | |
// Add the message to the Inbox folder | |
inboxFolder.AddMessage(message); | |
} |
إضافة عناصر Outlook
تسمح لك عينة التعليمات البرمجية التالية بإضافة جهة اتصال إلى ملف PST جديد كمثال. يوضح العملية لإنشاء ملف تخزين شخصي جديد، وإضافة مجلد جهات الاتصال القياسي إليه، وتحميل جهة اتصال من ملف VCF، وإضافة جهة الاتصال إلى مجلد جهات الاتصال. تتضمن التعليمات البرمجية الخطوات التالية:
- قم بتهيئة كائن PersonalStorage جديد.
- استخدم طريقة CreatePredefinedFolder لإنشاء مجلد قياسي مع تحديد نوع المجلد StandardIpmFolder.Contacts للإشارة إلى أنه مجلد جهات الاتصال.
- استخدم طريقة MapiContact.FromVCard لتحميل جهة اتصال من ملف VCF. تقوم هذه الطريقة بإنشاء كائن MapiContact يمثل معلومات جهة الاتصال.
- استخدم طريقة AddMapiMessageItem لإضافة جهة الاتصال المحملة إلى مجلد جهات الاتصال.
using (var pst = PersonalStorage.Create("sample.pst", FileFormatVersion.Unicode)) | |
{ | |
// Create a standard folder (Contacts) | |
var contactsFolder = pst.CreatePredefinedFolder("My Contacts", StandardIpmFolder.Contacts); | |
// Load a contact from vcf file | |
var contact = MapiContact.FromVCard("Contact.vcf"); | |
// Add the contact to the folder | |
contactsFolder.AddMapiMessageItem(contact); | |
} |
الخاتمة
في هذا الدرس، استكشفنا كيفية إنشاء ملفات PST باستخدام C# .NET مع مكتبة Aspose.Email. من إنشاء تخزين PST فارغ إلى إضافة مجلدات ومجلدات فرعية، وتنوع عناصر Outlook، توفر المكتبة مجموعة شاملة من الميزات لمعالجة ملفات PST. يتيح دمج هذه الوظائف في تطبيقاتك C# .NET إدارة بيانات Outlook بكفاءة، مما يعزز متانة ومرونة حلولك البرمجية.
بعيدًا عن ذلك، تقدم المكتبة مجموعة واسعة من الميزات لإنشاء، استخراج، تحليل، تحويل، والتلاعب برسائل البريد الإلكتروني مدعومة بوثائق شاملة وأمثلة تعليمات برمجية لتبسيط عملية الدمج، مما يسهل على المطورين تنفيذ حلول متعلقة بالبريد الإلكتروني داخل تطبيقاتهم .NET.
بالإضافة إلى API المتقدمة، يمكنك الحصول على وصول مستمر إلى موارد مجانية:
- منتدى الدعم - مجتمع ضخم للحصول على إجابات لجميع أسئلتك
- مدونة - معلومات لا تقدر بثمن حول الميزات المحدثة
- وثائق - دروس، أمثلة تعليمات برمجية، وأفضل الممارسات مع الوصول إلى مراجع API
- تطبيقات مجانية apps لعرض أو تحويل، دمج أو تحليل رسائل البريد الإلكتروني، تحليل الرؤوس، إضافة علامة مائية، وأكثر
تضمن Aspose.Email أن يكون لدى المطورين الموارد اللازمة للتنقل في أي تحديات واستغلال إمكانيات API في تطبيقاتهم.