Question

J'essaie d'écrire du code C # pour accéder à un dossier spécifique d'une boîte aux lettres Outlook. J'ai le code suivant:

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())
}

Cela me mènera à la "Boîte de réception". dossier. J'essaie d'obtenir un dossier au même niveau que le dossier Boîte de réception. Je crois que j'ai besoin d'utiliser GetFolderFromID au lieu de GetSharedDefaultFolder, mais je ne comprends pas comment l'utiliser. Existe-t-il un moyen de parcourir tous les dossiers de niveau supérieur? Comment puis-je déterminer le EntryID et le StoreID du dossier?

Merci!

Était-ce utile?

La solution

Vous pouvez utiliser le membre de la collection Folders de l'objet Outlook.NameSpace. De cette façon, vous pouvez parcourir la collection et trouver votre dossier par son nom. Si vous souhaitez toujours utiliser GetFolderFromID, vous pouvez utiliser l'outil OutlookSpy pour obtenir les valeurs EntryID et StoreID.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top