Option Explicit
' VBA Script that gets list of Outlook COM AddIns
' Use Tools->Macro->Security to allow Macros to run, then restart Outlook
' Run Outlook, Press Alt+F11 to open VBA
' Programming by Greg Thatcher, http://www.GregThatcher.com
Public Sub GetListOfComAddIns()
On Error GoTo On_Error
Dim Report As String
Dim AddIns As COMAddIns
Dim AddIn As COMAddIn
Set AddIns = Application.COMAddIns
For Each AddIn In AddIns
Report = Report & "Description : " & AddIn.Description & vbCrLf
Report = Report & "ProgId : " & AddIn.ProgId & vbCrLf
Report = Report & "Connect : " & AddIn.Connect & vbCrLf
Report = Report & "Creator : " & AddIn.Creator & vbCrLf
Report = Report & "Guid : " & AddIn.GUID & vbCrLf
Report = Report & "Parent : " & AddIn.Parent & vbCrLf
Report = Report & vbCrLf & vbCrLf
Next AddIn
Call CreateReportAsEmail("List of COM AddIns", Report)
Exiting:
Exit Sub
On_Error:
MsgBox "error=" & Err.Number & " " & Err.Description
Resume Exiting
End Sub
' VBA SubRoutine which displays a report inside an email
' Programming by Greg Thatcher, http://www.GregThatcher.com
Public Sub CreateReportAsEmail(Title As String, Report As String)
On Error GoTo On_Error
Dim Session As Outlook.NameSpace
Dim mail As MailItem
Dim MyAddress As AddressEntry
Dim Inbox As Outlook.Folder
Set Session = Application.Session
Set Inbox = Session.GetDefaultFolder(olFolderInbox)
Set mail = Inbox.Items.Add("IPM.Mail")
Set MyAddress = Session.CurrentUser.AddressEntry
mail.Recipients.Add (MyAddress.Address)
mail.Recipients.ResolveAll
mail.Subject = Title
mail.Body = Report
mail.Save
mail.Display
Exiting:
Set Session = Nothing
Exit Sub
On_Error:
MsgBox "error=" & Err.Number & " " & Err.Description
Resume Exiting
End Sub
|
|