How to use the Microsoft Outlook Object Library to send an HTML formatted message by using Visual C#

https://support.microsoft.com/zh-tw/help/310262/how-to-use-the-microsoft-outlook-object-library-to-send-an-html-formatted-message-by-using-visual-c

using System;
using System.Reflection;     // to use Missing.Value
// TO DO: If you use the Microsoft Outlook 11.0 Object Library, uncomment the following line.
// using Outlook = Microsoft.Office.Interop.Outlook;

namespace SendHTMLMail
{
   public class Class1
   {
      public static int Main(string[] args)
      {
         try
         {
            // Create the Outlook application.
            Outlook.Application  oApp = new Outlook.Application();

            // Get the NameSpace and Logon information.
            Outlook.NameSpace oNS = oApp.GetNamespace("mapi");

            // Log on by using a dialog box to choose the profile.
            oNS.Logon(Missing.Value, Missing.Value, true, true); 

            // Alternate logon method that uses a specific profile.
            // TODO: If you use this logon method, 
            //  change the profile name to an appropriate value.
            //oNS.Logon("YourValidProfile", Missing.Value, false, true); 

            // Create a new mail item.
            Outlook.MailItem oMsg = (Outlook.MailItem)oApp.CreateItem(Outlook.OlItemType.olMailItem);

            // Set the subject.
            oMsg.Subject = "Send Using OOM in C#";

            // Set HTMLBody.
            String sHtml;
            sHtml = "<HTML>\n" + 
               "<HEAD>\n" +
               "<TITLE>Sample GIF</TITLE>\n" +
               "</HEAD>\n" +
               "<BODY><P>\n" + 
               "<h1><Font Color=Green>Inline graphics</Font></h1></P>\n" +
               "</BODY>\n" + 
               "</HTML>";
            oMsg.HTMLBody = sHtml;

            // Add a recipient.
            Outlook.Recipients oRecips = (Outlook.Recipients)oMsg.Recipients;
            // TODO: Change the recipient in the next line if necessary.
            Outlook.Recipient oRecip = (Outlook.Recipient)oRecips.Add("email address");
            oRecip.Resolve();

            // Send.
            oMsg.Send();

            // Log off.
            oNS.Logoff();

            // Clean up.
            oRecip = null;
            oRecips = null;
            oMsg = null;
            oNS = null;
            oApp = null;
         }

         // Simple error handling.
         catch (Exception e)
         {
            Console.WriteLine("{0} Exception caught.", e);
         }  

         // Default return value.
         return 0;
  
      }
   }
}

 

厚積薄發,擁抱 .NET 2016

http://www.zendei.com/article/10879.html

  • .NET Framework 4.6

.NET Framework 4.6 作為 .NET Framework 的最新版本,在過去 10 多年間,不斷被增強。我們利用這個 Framework 構建 Windows Form 、WPF、ASP.NET 4 等應用程式。儘管 ASP.NET Core 應用程式運行在.NET Core 上,但它也能運行在.NET Framework 4.6 上。

如果你想要繼續使用 ASP.NET Web Form 開發應用程式,.那麼 NET Framework 4.6 中的 ASP.NET 4.6 是你的最佳選擇。值得註意的是你不能在.NET Core 上運行 ASP.NET Web Form 應用程式。

  • .NET Core 1.0

.NET Core 1.0(目前是 RC2),是新的.NET,相比於 Mono,它是真正意義上跨平臺的實現。.NET Core 被設計成模塊化的方法,即被分割成大量的 Nuget Package。在應用程式中,你決定需要哪些 Package,並且隨時保持更新和卸載。而.NET Framework,它是操作系統的一部分,註定不能實時被更新,同時,過去 10 多年件,.NET Framework 加入非常多的新功能,它變得越來越大,更糟糕的是,它不可能移除不再需要的舊功能。比如舊的集合類不再被使用因為泛型集合類加入,.NET Remoting 被新的通信技術 WCF、ASP.NET Web API 替換,LINQ to Sql 被 EntityFramework 替換。而這些舊技術,一直存在.NET Framework 中,你不得不全盤接受他們。

  • Xamarin

Mono 是開源社區開發的跨平臺.NET Framework,而 Xamarin 是一個構建於 Mono 上跨平臺移動應用開發框架。相信微軟收購了 Xamarin 之後,Mono 將得到大力支持,.NET Core 在移動端的表現拭目以待。