Мне нужен способ определить, является ли папка Outlook общедоступной. Я подозреваю, что есть свойство Microsoft.Office.Interop.Outlook, которое позволит мне это сделать, но я не могу его найти.Как определить, является ли папка Outlook открытой?
ответ
Что вы хотите - это Exchange Web Service, в частности операция FindFolder (см. here или here для некоторых описаний MSDN).
Хотя, по внешнему виду, нет конкретного свойства, которое идентифицирует, является ли папка «общедоступной», например, упоминается @RedDeckWins.
UPDATE
Если конкретно не требуется использовать управляемый C# для этого, вы можете использовать Powershell Команды Exchange (проверить это here). В частности, эта команда может быть полезной:
Get-PublicFolder -Recurse | Format-List Name
Powershell является довольно простым в использовании само по себе, но он также может быть вызвана из C#, если сервер ваш код работает на установил его (что, для самых современных коробки, должны).
Если вы ARE ограничено C#, посмотрите на этот StackOverflow вопрос: List of email address to public folders in exchange
Я хочу перечислить папки и вытащить контакты, но только локальные, а не контакты на сервере обмена. Кажется странным, что я не могу найти хороший способ определить, являются ли контакты локальными или удаленными на сервере обмена, когда я перечисляю их. –
См. Мое обновление. Вы ограничены ТОЛЬКО C#, или можете использовать Powershell? Инструменты, включенные в Exchange, могут очень сильно помочь здесь. – karlgrz
@Greg: см. Обновление к моему ответу. Если вы хотите, чтобы папки «Контакты» находились внутри основного почтового ящика (* not * public), просто сравните их «StoreID's» или просто ограничьте свой поиск в местном магазине. –
Если вы можете получить на границе IMsgStore
, связанный с папкой в вопросе (извините, не знаю, как сделать это с чистый C# - рекомендую Redemption), вы можете запросить свойство PR_MDB_PROVIDER
, чтобы узнать, pbExchangeProviderPublicGuid
.
Update основан на ваш комментарий к ответу КГ в:
Если вы хотите, чтобы отфильтровать контакты, которые находятся внутри ваш основной почтовый ящик, просто сравнить их StoreID
с этим из вашей папки входящих сообщений по умолчанию - или просто не» t перечислить папки из любых других магазинов для начала.
- 1. Как определить, открыта ли папка?
- 2. Цель C - Как определить, является ли папка пакетом?
- 3. Как определить, повреждена ли папка NTFS?
- 4. Как определить, существует ли папка в innosetup
- 5. Является ли кроссплатформенная папка .git?
- 6. Определить, является ли текущее окно Outlook форвардной электронной почтой?
- 7. Как определить, отображается ли элемент outlook
- 8. Является ли это JS-Framework открытой платформой?
- 9. Является ли семантическая разметка слишком открытой?
- 10. Как определить, была ли запущена папка, с которой была запущена WPF-аппликация, является ли папка запуска пользователя?
- 11. объект является Как определить, является ли последовательность
- 12. Как определить, существует ли папка и доступна ли запись?
- 13. Как определить, находится ли папка в сетевом пути?
- 14. Является ли отображаемая .git папка угрозой безопасности?
- 15. Является ли папка Wordpress/wp-admin общей?
- 16. Проверьте, является ли текущая папка корневым каталогом
- 17. Определить, доступен ли Outlook для автоматизации
- 18. Ссылка Общая папка Outlook в VBA
- 19. Как определить, включена ли папка Windows с индексированием контента?
- 20. Могу ли я определить временный путь открытой книги Excel?
- 21. Укажите, присутствует ли папка?
- 22. Как определить, подписывается ли Outlook по электронной почте по умолчанию?
- 23. Определить, является ли файл значком
- 24. Определить, является ли NSNumber NaN
- 25. Powershell Создать Outlook Общая папка ярлык
- 26. Определить, является ли ячейка видна
- 27. Определить, является ли строка "утвердительной"?
- 28. Определить, является ли объект Generic
- 29. Как определить, является ли сетевой адаптер беспроводной?
- 30. как определить, является ли переменная строкой
Папки Outlook, похоже, не имеют «общедоступных» свойств, но у них есть разрешения. Это то, что вам нужно? –
Публичные папки - вещь обмена. Не уверен, что Outlook OM позволит вам получить к нему доступ. Я точно знаю, что EWS (Exchange Web Service) разрешает доступ к общим папкам. – RedDeckWins