Solved

Automate email generation client side using VBScript

Posted on 2009-07-13
2
584 Views
Last Modified: 2012-05-07
I need to automate the generation of an email from an intranet web page.  This email needs to be created cient side, as the senders will need to be able to review the mail and attachments before it is sent, and it needs to go from their own account and be filed in their sent items etc. I am working with office 2007, but my users are on a mixture of office 2003 and 2007.

I have found that I am not able to automate outlook from IE using VBScript.  When I try to create an instance of an outlook application, I get an error that the activeX object cannot be created . I assume this must be a security feature as I can automate outlook from Excel and Access. I don't know if there is a way around this, but I have failed to find one so far.

I am able to automate word from IE, so I thought as a workaround i may be able to create the email in Word.  This script works fine and creates and the email using word when outlook is closed, but when outlook is open it fails when I try to display the envelope information. When this happens, if I go into the word app that is created and try to manually set the envelopevisible property to true, I get an error -2147467259 (80004005).

I'm getting a bit stumped now and would be grateful for any ideas?

Thanks
Phil
sub window_onLoad()

        

            dim app, doc

            set app = createobject("Word.Application")

            app.Visible = true

            doc = app.Documents.Add

            

            'Set body text

            app.ActiveDocument.Range.Text = "Text Area"
 

            'Set mail details

            app.ActiveWindow.EnvelopeVisible = True

            app.ActiveDocument.MailEnvelope.Item.Recipients.Add document.getElementById("<%=MailTo.ClientID%>").Value

            app.ActiveDocument.MailEnvelope.Item.Subject = document.getElementById("<%=MailSubject.ClientID%>").Value

            app.ActiveDocument.MailEnvelope.Item.Attachments.Add "C:\test.txt"
 

            'Close window

            self.close()

  

        end sub

Open in new window

0
Comment
Question by:phillarby
2 Comments
 
LVL 18

Expert Comment

by:exx1976
ID: 25017866
You need to use Outlook Redemption.

http://www.dimastr.com/redemption/

HTH,
exx
0
 

Accepted Solution

by:
phillarby earned 0 total points
ID: 25020560
Sadly that is not an option.

In the end I sent the mails server side to the users, who could then check them before forwarding on to their intended recipients.
0

Featured Post

How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

Join & Write a Comment

Suggested Solutions

Popularity Can Be Measured Sometimes we deal with questions of popularity, and we need a way to collect opinions from our clients.  This article shows a simple teaching example of how we might elect a favorite color by letting our clients vote for …
Why do we like using grid based layouts in website design? Let's look at the live examples of websites and compare them to grid based WordPress themes.
The viewer will learn how to count occurrences of each item in an array.
Any person in technology especially those working for big companies should at least know about the basics of web accessibility. Believe it or not there are even laws in place that require businesses to provide such means for the disabled and aging p…

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now