Хорошо, я пытаюсь подключиться к календарю Outlook из С#, используя следующий код:
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.