سؤال

أحاول كتابة بعض رموز C# للوصول إلى مجلد معين في صندوق بريد Outlook.لدي الكود التالي:

Outlook.Application oApp = new Outlook.Application();
Outlook.NameSpace oNS = oApp.GetNamespace("mapi");
Outlook.Recipient oRecip = oNS.CreateRecipient("AccountNameHere");
oRecip.Resolve();
if (oRecip.Resolved)
{
  oInbox = oNS.GetSharedDefaultFolder(oRecip, Outlook.OlDefaultFolders.olFolderInbox);
  oInboxMsgs = oInbox.Items;
  ItemCount = oInboxMsgs.Count;
  Console.Writeline("There are {0] items.", ItemCount.ToString())
}

سيؤدي هذا إلى نقلي إلى مجلد "البريد الوارد".أحاول الوصول إلى مجلد بنفس مستوى مجلد البريد الوارد.أعتقد أنني بحاجة إلى استخدام GetFolderFromID بدلاً من GetSharedDefaultFolder، لكنني لا أفهم كيفية استخدامه.هل هناك طريقة للتكرار عبر كافة مجلدات المستوى الأعلى؟كيف يمكنني تحديد EntryID وStoreID للمجلد؟

شكرًا!

هل كانت مفيدة؟

المحلول

يمكنك استخدام عضو مجموعة المجلدات لكائن Outlook.NameSpace.وبهذه الطريقة يمكنك التكرار خلال المجموعة والعثور على المجلد الخاص بك باسمه.في حال كنت لا تزال ترغب في استخدام GetFolderFromID، يمكنك استخدام OutlookSpy أداة للحصول على قيم EntryID وStoreID.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top