Как я могу получить доступ к папкам Outlook, в которых есть учетная запись MS Exchange

Я написал следующий код для доступа к папкам Outlook.

MSOutlook.Application app = new MSOutlook.Application();
MSOutlook.NameSpace ns = app.GetNamespace("MAPI");
try
{
    foreach (MSOutlook.Folder folder in ns.Folders)
    {
        ...
    }
}
catch (Exception ex)
{
    ...
}

но этот код генерирует исключение в ns.Folders, и это исключение означает

Сервер RPC недоступен. (Исключение из HRESULT: 0x800706BA).

Однако я могу получить папки, используя тот же код в среде, в которой нет учетной записи Exchange.

Как я могу получить папки в среде с учетной записью MS Exchange?


person Joe    schedule 08.06.2012    source источник


Ответы (1)


Microsoft.Office.Interop.Outlook.Application app = new Microsoft.Office.Interop.Outlook.Application();

        Outlook._NameSpace ns = app.GetNamespace("MAPI");
        Outlook.MAPIFolder taskFolder = ns.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderTasks);

        foreach (Microsoft.Office.Interop.Outlook.Folder folder in ns.Folders)
            {
                System.Diagnostics.Debug.WriteLine("Folder ----"+folder.Name.ToString());
            }

Это работает для меня хорошо ..

person MoraRockey    schedule 20.06.2012