Хорошо. Я пытаюсь подключиться к календарю Outlook из C #, используя следующий код:
using Outlook = Microsoft.Office.Interop.Outlook;
Outlook.Application msOutlook = new Outlook.Application();
Outlook.NameSpace ns = msOutlook.GetNamespace("MAPI");
Outlook.MAPIFolder folder = ns.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar);
foreach (Outlook.MAPIFolder subfolder in folder.Folders)
{
MessageBox.Show(subfolder.Name);
}
Однако, несмотря на наличие двух календарей, фрагмент кода выше не видит ни одного!
Думаю, мне повезет больше с кодом ниже:
Outlook.MAPIFolder folder = ns.GetFolderFromID("CalendarName", Type.Missing);
Но это исключение:
Не удалось открыть предмет. Попробуйте еще раз.
Я предполагаю, что идентификатор календаря - это нечто иное, чем его имя.
Что я делаю не так?
Также я использую C # 4 с .Net 4 и Outlook 2010.