1

私はこれで立ち往生しています。これが私のサンプルコードです。メール アイテムを作成し、メール メッセージのようにデータベースからバインドします。そして、Outlookの返信パターンで返信したいと思います。from:、to:、その水平線などを追加します。元のメールの上..しかし、「Globals.ThisAddIn.Application.CreateItem(OlItemType.olMailItem) as MailItem」のような作成されたメールでは機能しません

MailItem が Globals.ThisAddIn.Application.ActiveExplorer().Selection アイテムの 1 つである場合、MailItem.Reply() は完全に機能します。

ありがとう..

            MailItem oItem = Globals.ThisAddIn.Application.CreateItem(OlItemType.olMailItem) as MailItem;
            oItem.Body = "...";
            oItem.To = "a@b.c";
            oItem.CC = "d@e.f";
            oItem.Subject = "....";
            MailItem response = oItem.Reply();

ここにエラー コード: タイプ 'System.Runtime.InteropServices.COMException' の例外が HMOutlookAddIn.dll で発生しましたが、ユーザー コードで処理されませんでした

追加情報: メールを送信できませんでした。

エラーコード: -2147352567

4

1 に答える 1

0

新しく作成された項目への返信は不要です。Reply メソッドは、受信したメッセージに対してのみ使用できます。

代わりに、MailItem クラスのSendメソッドを使用する必要があります。

    mail = OutlookApp.CreateItem(Outlook.OlItemType.olMailItem)
       as Outlook.MailItem;
    mail.Subject = "A programatically generated e-mail";
    mailRecipients = mail.Recipients;
    mailRecipient = mailRecipients.Add("Eugene Astafiev");
    mailRecipient.Resolve();
    if (mailRecipient.Resolved)
    {
        mail.Send();
    }
    else
    {
        System.Windows.Forms.MessageBox.Show(
            "There is no such record in your address book.");
    }

次の記事が役立つ場合があります。

于 2016-06-08T12:39:04.650 に答える