Я работаю над надстройкой, которая запускается при отправке письма. Если сообщение содержит определенный текст, оно отменяет отправку сообщения и переводит его в черновики. Это работает при отправке писем непосредственно из Outlook, но не выполняется, когда электронное письмо генерируется другой программой и отправляется через Outlook. В этом случае электронное письмо отправляется в папку «Исходящие» в течение пары секунд, а затем отправляется, как обычно.Outlook Add-In Application.ItemSend не работает
Private Sub OnItemSend(Item As System.Object, ByRef Cancel As Boolean) _
Handles Application.ItemSend
Dim mail As Outlook.MailItem = TryCast(Item, Outlook.MailItem)
Dim myNameSpace As Outlook.NameSpace
Dim myDestFolder As Outlook.Folder
Dim mydrafts As Outlook.Folder
myNameSpace = Application.GetNamespace("MAPI")
mydrafts = myNameSpace.GetDefaultFolder(OlDefaultFolders.olFolderDrafts)
myDestFolder = mydrafts
If InStr(mail.Body, "Message") = 1 Then
Cancel = True
mail.Move(myDestFolder)
End If
End Sub
Другая программа - предлагать цену программное обеспечение, которое мы просто идем. Я не уверен, как он отправляет электронное письмо, кроме того, что он проходит через Outlook. – Fercstar
Вы видите этот пожар событий в OutlookSpy (нажмите «Приложение», перейдите на вкладку «События», посмотрите журнал в нижней части окна)? –
Единственное событие, которое было уволено, было когда я получил письмо (я отправил его самому себе). Ничего не случилось, когда оно было отправлено. – Fercstar