1

.Net 4.0でビルドした次のコードがあります。正常に動作しますが、.Net 3.5でプロジェクトをビルドする必要があり、MailItemの作成時にエラーが発生します。エラーメッセージは:-

"'タイプ'オブジェクト'を'microsoft.office.interop.outlook.olmailitem'に暗黙的に変換することはできません"

 Outlook.Application application = new Outlook.Application();

    Outlook.Folder folder = 


        application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderDrafts) 
                        as Outlook.Folder;

    Outlook.MailItem mail =
                    application.CreateItem(Outlook.OlItemType.olMailItem);

    foreach (string name in addlist)
                {
                    mail.Recipients.Add(name);
                }

    mail.BodyFormat = Outlook.OlBodyFormat.olFormatHTML;
                mail.HTMLBody = msg;
                mail.Subject = textBox1.Text;
                mail.Save();

誰か助けてもらえますか?構文の問題を解決するのに苦労していますか?

4

1 に答える 1

2

Outlook.Application.CreateItemはオブジェクトを返します(正確には動的)。次のように、オブジェクトをOutlook.MailItemに明示的にキャストする必要があります。

Outlook.MailItem mail = 
                application.CreateItem(Outlook.OlItemType.olMailItem) as Outlook.MailItem;
于 2012-09-20T10:07:35.787 に答える