У меня есть приложение ASP.net, которое откроет внешний вид для определенной функции. пример кода:Open outlook в ASP.Net
Microsoft.Office.Interop.Outlook.Application oApp = new Microsoft.Office.Interop.Outlook.Application();
Microsoft.Office.Interop.Outlook.NameSpace oNS = oApp.GetNamespace("mapi");
oNS.Logon(null, null, true, true);
Microsoft.Office.Interop.Outlook.MailItem oMail = (Microsoft.Office.Interop.Outlook.MailItem)oApp.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem);
oMail.Subject = "Sample Subject";
oMail.To = "[email protected]";
oMail.HTMLBody = "Sample Paragraph";
oMail.Display(false);
oApp = null;
oNS = null;
oMail = null;
Это работает нормально, когда я запускаю его через Visual Studio. После этого я публикую его в IIS 5.1, так что в основном я использую Windows XP.
Теперь я запустить его с помощью опубликованной версии на IIS, и я получил ошибку «Извлечение COM фабрики классов для компонента с CLSID {0006F03A-0000-0000-C000-000000000046}».
Я исправил это, поставив олицетворение в файле web.config. Теперь приложение успешно работает без ошибок.
Но проблема теперь в том, что она, похоже, не открывает внешний вид, я пробовал отлаживать ее с помощью attach для процесса на aspnet_wp.exe и смог подключиться к точке останова и, казалось, прошел через все строки, не выдавая ошибку, но я просто не открываю Outlook.
Я не могу что-то настроить на уровне IIS? Спасибо!
Каждый раз, когда я вижу, что «MS Office» работает на сервере, я должен плакать. Не делай этого. Office не должен запускаться на серверах. В частности, с Outlook вы должны иметь дело с профилями и т. Д. Если вы хотите отправить по электронной почте классы SmtpClient и MailMessage. – gsharp
Ха-ха, это правда, я думаю, что вы справлялись с этим раньше, и вы знаете его боль на голове. В любом случае, спасибо за ваше предложение, и на самом деле это то, что я пытаюсь сделать прямо сейчас :) –
Хороший выбор :-) SmtpClient очень просто. На Google есть тонны образцов. Получайте удовольствие, отправляя электронные письма. – gsharp