2016-06-04 2 views
-2

У меня есть приложение C# MVC. Я использую Outlook Interlop для создания и открытия новой почты через приложение с содержимым и вложениями, предварительно заполненными.Открыть новое окно электронной почты Outlook на машине для клиники

Я получаю желаемую функциональность, когда я запускаю приложение локально на своей машине разработки.

Когда я развертываю одно приложение на сервере (2012 R2), новое окно электронной почты Outlook не открывается на стороне клиента.

  1. Можно открыть новое окно электронной почты Outlook на клиентской машине с кодом interlop, запущенным на сервере. (Каждый пользователь приложения имеет Outlook, установленный на своем компьютере).

  2. Я только что установил Outlook 2013 на сервере. Есть ли что-то еще, что мне нужно сделать на сервере, чтобы сделать эту работу.

Любая помощь будет оценена по мере того, как я много борется за эту работу.

Есть ли альтернативные решения для достижения того же?

Заранее спасибо.

+0

Пожалуйста, размещайте код, который работает локально на вашей машине разработки. – Lee

+0

Microsoft.Office.Interop.Outlook.Application oApp = new Microsoft.Office.Interop.Outlook.Application(); Microsoft.Office.Interop.Outlook.MailItem oMsg = (Microsoft.Office.Interop.Outlook.MailItem) oApp.CreateItem (Microsoft.Office.Interop.Outlook.OlItemType.olMailItem); oMsg.Subject = "subject something"; oMsg.BodyFormat = Microsoft.Office.Interop.Outlook.OlBodyFormat.olFormatHTML; oMsg.HTMLBody = "текст тела"; // Приходит ваше тело; oMsg.Display (false); – Abhi

ответ

2

Нет, во-первых, Outlook не может работать в сервисе, таком как IIS.

Даже если это возможно, оно все равно будет отображаться на стороне сервера.

Вы можете динамически генерировать сообщение EML (MIME) на сервере. Когда пользователь на стороне клиента загрузит его, Outlook отобразит его. Если вы хотите, чтобы сообщение отображалось неактивным, убедитесь, что вы включили заголовок MIME X-Unsent (установите его значение равным 1).

+0

Спасибо за помощь. Можете ли вы предоставить мне образец кода для этого же. – Abhi

+0

У меня нет ничего, что я могу поделиться. EML - это просто текстовый файл - его можно открыть в «Блокноте». –

0

Код, выполняющийся на сервере, заставляет все происходить на сервере. Он работает на вашем компьютере-разработчике, потому что это клиент и сервер, он не будет работать на других компьютерах. В дополнение к этому, я считаю, что материал Office Interop говорит, что он не предназначен для использования на сервере (как по техническим, так и по юридическим причинам).

Если вы хотите вывести сообщение, предварительно заполненное некоторыми значениями на клиентской машине, у вас есть опция связи mailto, но я считаю, что это только обычный текст без вложений.

+0

mailto не работает, так как мне нужны вложения. – Abhi

Смежные вопросы