2014-09-24 38 views
0

我试图打开Outlook窗体与身体发送消息。 当我与我的本地工作完全开放。但是,当我使用IIS的Outlook窗口不打开。新Outlook窗口在IIS中使用C#

public static void SendMailInOutlook(Page CurrentPage, Type ScriptType, 
    string Subject, string Recipients, Dictionary<string, string> emailInputs, 
    string emailTemplatePath) 
{ 
    static Microsoft.Office.Interop.Outlook.Application outlookApp; 
    static Microsoft.Office.Interop.Outlook._MailItem mailItem; 
    outlookApp = new Microsoft.Office.Interop.Outlook.Application(); 
    mailItem = (Microsoft.Office.Interop.Outlook._MailItem)outlookApp.CreateItem(
     Microsoft.Office.Interop.Outlook.OlItemType.olMailItem); 
    mailItem.Subject = Subject; 
    mailItem.To = Recipients; 
    mailItem.HTMLBody = SendMail.GetEmailContent(emailInputs, emailTemplatePath); 
    Thread newThread = new Thread(SendEmailToOutLook); 
    newThread.Start();      
} 

static void SendEmailToOutLook() 
{ 
    string sMsg = "Email sent successfully."; 
    try 
    { 
     mailItem.Display(true); 
    } 
    catch (Exception ex) 
    { 
     sMsg = ex.Message; 
    } 
} 

回答

0

而且它不会。 您的代码隐藏在Web服务器上执行,而不是在客户端计算机上执行。因此,当您在本地开发并在本地运行Web应用程序时,该代码将在同一台计算机上执行,因此“正在工作”。 但是,一旦你部署了,“Outlook代码”在不同于浏览器所在的机器上执行。它不能工作。

最常见的方法这一要求是“mailto连结”的<a href='mailto:[email protected]'...

+0

我需要通过HTML表单在这个喜欢...我如何通过HTML表单中HREF链接? – sarathkumar 2014-09-24 08:01:31

+0

HTML表单在电子邮件中做了什么? – Alexander 2014-09-24 10:36:35

+0

像我需要传递的HTML形式因为我需要加载一些默认设计的身体..像Dashing边框颜色和填充的话..所以这是如何可能..以前我只尝试过这一个,但当我通过HTML表单脚本无法正常工作.... – sarathkumar 2014-09-25 06:31:25