2017-01-20 8 views
0

Outlookの電子メールメッセージにExcelファイルを埋め込もうとしています。添付ファイルの種類を「OlAttachmentType.olOLE」に設定していますが、メッセージが作成されると、Excelドキュメントが添付ファイルとして届きます。プログラムでC#を使用してOutlook電子メールにOLEオブジェクトを挿入します

以下は私のコードです。それはかなり簡単なようですが、期待どおりに動作しません。

 var application = new Microsoft.Office.Interop.Outlook.Application(); 
     var message = (MailItem)application.CreateItem(OlItemType.olMailItem); 
     var path = @"C:\Excel\Workbook.xlsx"; 
     var missing = System.Type.Missing; 

     message.Attachments.Add(path, OlAttachmentType.olOLE, 1, missing); 
     message.SaveAs(@"C:\Excel\Workbook.msg", OlSaveAsType.olMSG); 

     application.Quit(); 

答えて

0

Outlookオブジェクトモデルでは、埋め込みOLEオブジェクトを挿入することはできません。既存のOLEオブジェクトにアクセスするのが最善です。 OLE添付ファイルを挿入することは、拡張MAPIレベルでさえも重要なことです。添付ファイル用に特別にフォーマットされたIStorageを作成し、後で処理するホストだけが理解できる形式でデータを入力する必要があります。また、ビットマップにプレビューを提供し、RTF本体に適切なプレースホルダを挿入する必要があります。

関連する問題