Automate email generation client side using VBScript

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

phillarbyAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

exx1976Commented:
You need to use Outlook Redemption.

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

HTH,
exx
0
phillarbyAuthor Commented:
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

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Web Development

From novice to tech pro — start learning today.