1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
Imports Outlook = Microsoft.Office.Interop.Outlook
Imports Microsoft.Office.Core
<Runtime.InteropServices.ComVisible(True)> _
Public Class Ribbon
Implements Office.IRibbonExtensibility
'permet l'utilisation de la dll
Declare Function AjoutMail Lib "DLMDLL.dll" Alias "Ajouter_une_piece_jointe_a_un_mail" () As String
'déclaration du ruban pour surcharger le principal
Private ribbon As Office.IRibbonUI
Dim MailItem As Outlook.MailItem
Public Sub New()
End Sub
'fonction qui permet d'intérargir avec le ruban d'outlook 2010
Public Function GetCustomUI(ByVal ribbonID As String) As String Implements Office.IRibbonExtensibility.GetCustomUI
Return GetResourceText("DLMOutlookAddIn2010.Ribbon.xml")
End Function
'fonction appelée au click sur le bouton pièce jointe
Public Sub Attach(ByVal control As IRibbonControl, ByRef cancelDefault As Boolean)
'permet de récupérer l'objet email que l'utilisateur vient de créer
MailItem = TryCast(ThisAddIn.outApp.ActiveInspector().CurrentItem, Outlook.MailItem)
Dim temp As String
Dim count As Integer
'lance la fonction qui apple dlm
temp = AjoutMail()
'si renvoie pas -1
If temp <> "-1" Then
'click passe à True pour dire que le bouton a bien été clické
ThisAddIn.click = True
'Mise en pièce jointes du html
MailItem.Attachments.Add(temp)
'sinon
Else
'on compte le nb de pièce jointe
count = MailItem.Attachments.Count
MsgBox("annulation de l'envoie de pièce jointe")
'on supprime la dernière ajouté
MailItem.Attachments.Remove(count)
End If
'permet de ne pas lancer la fenêtre de recherche de fichiers par défault (outlook)
cancelDefault = True
End Sub
End Class |
Partager