プログラム内から Outlook メッセージを生成しようとしています。ビルドしてプログラム内から送信するか、ビルドして保存することができます。ビルドしてから表示して、ユーザーが AD リストから受信者を手動で選択できるようにしたいと考えています。 ... 以下のコードは、ここのサンプルと他のチュートリアル サイトを混同したものですが、下書きを保存したり、プログラム内から送信したりせずにメールをビルドして「表示」することはできません...
また、メール IE 内に UNC リンクを作成する方法を探しています。ユーザー フォルダ \\unc\path\%USERNAME% などへのパスを書き出します。
private void sendEmailOutlook(string savedLocation, string packageName)
{
try
{
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.HTMLBody = "Attached is the required setup files for your <i><b>soemthing</i></b> deployment package.";
oMsg.HTMLBody += "\nPlease save this file to your network user folder located.<br /><br/>\\\\UNC\\data\\users\\%USER%\\";
oMsg.HTMLBody += "\nOnce saved please boot your Virtual machine, locate and execute the file at <br /> <br />\\\\UNC\\users\\%USER%\\";
int pos = (int)oMsg.Body.Length +1;
int attachType = (int)Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue;
Microsoft.Office.Interop.Outlook.Attachment oAttach = oMsg.Attachments.Add(savedLocation, attachType, pos, packageName);
oMsg.Subject = "something deployment package instructions";
oMsg.Save();
}
catch(Exception ex)
{
Console.WriteLine("Email Failed", ex.Message);
}