add some text into an email automatically

  • Thread starter Thread starter Nader
  • Start date Start date
N

Nader

Hi,

I'd like to add some text to the body of an e-mail after the user as click
on the send button. What is the best way to do that.

Thanks in advance.
 
Your best bet would be override the Send event for the current Item
Inspector and then add your text. I have seen the process written here
before, but for the life of me can't remember it exactly.

I will do some research and give you a definitive answer later today.

Regards,

Thaddaeus.
 
thanks a lot !
Thaddaeus Parker said:
Your best bet would be override the Send event for the current Item
Inspector and then add your text. I have seen the process written here
before, but for the life of me can't remember it exactly.

I will do some research and give you a definitive answer later today.

Regards,

Thaddaeus.
 
Hi,

I am looking into a similar function where I need to check the subject of
the outgoing email, did you get an example to start from on over riding the
send event?
 
Private Sub Application_ItemSend _
(ByVal Item As Object, Cancel As Boolean)
Dim strMsg As String
Dim res As Long
If Item.Subject = "" Then
Cancel = True
strMsg = "Please fill in the subject before sending."
MsgBox strMsg, _
vbExclamation + vbSystemModal, "Missing Subject"
Item.Display
End If
End Sub

For a more elaborate version that also checks for expected attachments, see http://www.outlookcode.com/codedetail.aspx?id=553

And for VBA basics, see http://www.outlookcode.com/d/vbabasics.htm


--
Sue Mosher, Outlook MVP
Author of Configuring Microsoft Outlook 2003

and Microsoft Outlook Programming - Jumpstart for
Administrators, Power Users, and Developers
 
How about in VB.NET? Do I start with implementing the IDTExtensibility2
interface?

How do I capture the new Mail event? Is that an inspector? Is this
documented somewhere?

I assume many people have written addins that check a property of every
outgoing message but I cannot seem to find an example to start from.


--
Denis Crotty
Application Developer



Sue Mosher said:
Private Sub Application_ItemSend _
(ByVal Item As Object, Cancel As Boolean)
Dim strMsg As String
Dim res As Long
If Item.Subject = "" Then
Cancel = True
strMsg = "Please fill in the subject before sending."
MsgBox strMsg, _
vbExclamation + vbSystemModal, "Missing Subject"
Item.Display
End If
End Sub

For a more elaborate version that also checks for expected attachments, see http://www.outlookcode.com/codedetail.aspx?id=553

And for VBA basics, see http://www.outlookcode.com/d/vbabasics.htm


--
Sue Mosher, Outlook MVP
Author of Configuring Microsoft Outlook 2003

and Microsoft Outlook Programming - Jumpstart for
Administrators, Power Users, and Developers
 
For outgoing mail, you should use the Application_ItemSend event, as I indicated. The NewMail event would be used for incoming mail. The entire Outlook object model is documented in Outlook VBA help and on MSDN.

See http://www.outlookcode.com/d/comaddins.htm for links to COM add-in samples and references. IDTExtensibility2 is the interface you'll use, unless you're designing solely for Outlook 2003, in which case you can use Visual Studio 2005 Tools for Office, which shields the developer from many of the issues involved in building shared add-ins with earlier VS.NET versions.

--
Sue Mosher, Outlook MVP
Author of Configuring Microsoft Outlook 2003

and Microsoft Outlook Programming - Jumpstart for
Administrators, Power Users, and Developers
 
Thanks Sue,

From what I have been reading I think I want to over ride the new inspector
event. Here is what I have so far:

Public Sub OnConnection(ByVal application As Object, ByVal connectMode As
Extensibility.ext_ConnectMode, ByVal addInInst As Object, ByRef custom As
System.Array) Implements Extensibility.IDTExtensibility2.OnConnection
applicationObject = application
addInInstance = addInInst
insp = applicationObject.Inspectors
End Sub
Private Sub insp_NewInspector(ByVal InspectorIn As Inspector)
Dim objItem As Object
objItem = InspectorIn.CurrentItem
If objItem "is a mail item" Then
do custom action
end if
End Sub

I don't know whether this is the right idea as I am not sure how to test if
the obj is a mail item.


--
Denis Crotty
Application Developer
 
The NewInspector event fires when a new item opens in its own Inspector window. It has nothing to do with your stated goal:

ItemSend, not NewInspector, is the event you would use to check the subject of an outgoing message.
I don't know whether this is the right idea as I am not sure how to test if
the obj is a mail item.

Check the value of its Class property.

--
Sue Mosher, Outlook MVP
Author of Configuring Microsoft Outlook 2003

and Microsoft Outlook Programming - Jumpstart for
Administrators, Power Users, and Developers
 
ahh, I see it now.

Here is what I have instead, going to test...


Dim WithEvents applicationObject As
Microsoft.Office.Interop.Outlook.Application

..
..
..

Private Sub applicationObject_ItemSend(ByVal Item As Object, ByRef Cancel As
Boolean) Handles applicationObject.ItemSend
MsgBox("You are sending Mail!!")
End Sub

I am assuming that I should see this message box every time I send...
--
Denis Crotty
Application Developer
 
Assuming that you have a statement somewhere to instantiate applicationObject, yes, that's what you should see.

--
Sue Mosher, Outlook MVP
Author of Configuring Microsoft Outlook 2003

and Microsoft Outlook Programming - Jumpstart for
Administrators, Power Users, and Developers
 
Back
Top