Vb.net Can';t从Outlook.MailItem中删除附件
我的Outlook加载项检查(当用户单击“发送”时)是否附加了大型附件。如果是这样,它应该删除它,取消发送,并将焦点返回给用户 这是我的Outlook加载项代码示例Vb.net Can';t从Outlook.MailItem中删除附件,vb.net,outlook,vsto,add-in,Vb.net,Outlook,Vsto,Add In,我的Outlook加载项检查(当用户单击“发送”时)是否附加了大型附件。如果是这样,它应该删除它,取消发送,并将焦点返回给用户 这是我的Outlook加载项代码示例 Private Sub ThisApplication_ItemSend(ByVal Item As Object, ByRef Cancel As Boolean) Handles Application.ItemSend Dim mail As Outlook.MailItem = CType(Me.Applicatio
Private Sub ThisApplication_ItemSend(ByVal Item As Object, ByRef Cancel As Boolean) Handles Application.ItemSend
Dim mail As Outlook.MailItem = CType(Me.Application.ActiveInspector.CurrentItem, Outlook.MailItem)
For i As Integer = mail.Attachments.Count To 1 Step -1
mail.Attachments.Remove(i)
Next
Cancel = True
End Sub
活动邮件项目仍显示所有附件:(
如何让Outlook删除所有附件(在用户发送邮件之前)并取消发送
万分感谢
魔咒试试这个:
Private Sub Application_ItemSend(ByVal Item As Object, ByRef Cancel As Boolean) Handles Application.ItemSend
Dim mail As Outlook.MailItem = CType(Me.Application.ActiveInspector.CurrentItem, Outlook.MailItem)
For Each a As Outlook.Attachment In mail.Attachments
a.Delete()
Next
Cancel = True
End Sub
我知道这是一个老问题,但我在Outlook 2010中遇到了同样的问题并解决了。在添加以下内容之前,删除和删除对我都不起作用:
mail.Save
“我如何让Outlook删除所有附件(在用户发送邮件之前)并取消发送?”我想确认一下,这里确实有两个问题。第一个问题是,您问为什么
mail.attachments.remove(I)
没有按预期工作。第二个问题是为什么Cancel=True
没有按预期工作。对吗?如果我设置Cancel=True,那么邮件就不会发送,用户可以对邮件进行更改…所以Cancel工作得很好。但是mail.Attachments.Remove(I)也许你会移除背景中的附件,但它们在视觉上仍然在邮件中……我希望它们消失。:)尝试发布文章:@MojoDK我只是澄清一下,因为你的问题不清楚你是否遇到了两个或一个问题。我不想让回答这个问题的人浪费时间调试/猜测Cancel=True
部分为什么不工作。