Является ли Interop.Outlook многопоточным?
Мне нужно использовать объекты Outlook Interop для создания файлов.MSG из веб-интерфейса. Поэтому к ним будут одновременно обращаться разные потоки. Это многопоточный?
И еще один вопрос: нужно ли инициализировать Outlook (например, установить учетную запись) перед использованием Outlook.Application
на сервере?
2 ответа
Простой ответ на ваш вопрос - нет.
Не идите по пути автоматизации, приложения Office не предназначены для использования в не-пользовательской интерактивной среде или для запуска на сервере. Microsoft опубликовала довольно обширную статью базы знаний по этому вопросу, подробно описав проблемы безопасности, масштабируемости и т. Д.
Раньше это не было проблемой, и людям это сходит с рук, просто игнорируя советы. Однако вы обнаружите, что более новые операционные системы (vista/server 2k8/win7) и новые версии Office просто больше не работают. Я настоятельно рекомендую не идти по этому маршруту.
Насколько я знаю, ни один из API Office не был разработан для работы на стороне сервера, только на стороне клиента.