以下のコードを呼び出すリボンのボタンがあります。その目的は、電子メールを送信し、その内容をクリップボードにコピーする、クリックするボタンを従業員に与えることです。 (長い話をすると、クライアントに送信されたすべてのメールを別のシステムに貼り付ける必要があります。メールを送信するだけのアクセス権はありません)Outlook VSTOで電子メールが送信されたときの送信者の電子メールと送信時刻の取得
問題:送信者名または実際の送信時刻を取得できません。
仮定:私はOutlookが実際にsendコマンドが送信されるまでその値を設定しないと推測しています。送信された時間と同じです。 (私がDate.Nowを使用した理由)。
追加情報:私の最初の本能の外に、両方を行うためのボタンを追加するという解決策が受け入れられるでしょう。
Public Sub OnTextButton(ByVal control As Office.IRibbonControl)
Dim mailItem As Outlook.MailItem = Globals.ThisAddIn.Application.ActiveInspector().CurrentItem
Dim email = "From: " & mailItem.Sender.Name & vbCrLf &
"Sent: " & Date.Now.ToString("f") & vbCrLf &
"To: " & mailItem.To & vbCrLf &
"Subject: " & mailItem.ConversationTopic & vbCrLf & vbCrLf & mailItem.Body
My.Computer.Clipboard.SetText(email)
mailItem.Send()
End Sub
参考文献: 正しいhttps://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook.mailitem_properties.aspx