NAME

Mail::Outlook::Message - extension to handle Microsoft (R) Outlook (R) mail messages.

SYNOPSIS

See Mail::Outlook, as this is not meant to be used as a standalone module.

DESCRIPTION

Handles the Message interaction with the Outlook API.

METHODS

new()

Create a new Outlook mail object. Returns the object on success or undef on failure. To see the last error use 'Win32::OLE->LastError();'.

create(%hash)

Creates a new message. Option hash table can be used.

Accessor Methods

The following accessor methods are available:

To  
Cc  
Bcc  
Subject  
Body

All functions can be called to return the current value of the associated object variable, or be called with a parameter to set a new value for the object variable.

XHeader($xheader,$value)

Adds a header in the style of 'X-Header' to the headers of the message. Returns undef if header cannot be added.

NOTE: Currently unimplemented, due to unreliable treatment by Exchange server.

From()

Returns the current settings for the read only From field. Note that this is not an email address when used in connection with a new message. Returns a list containing the Name and Address of the user.

display()

Creates a pre-populated New Message via Outlook. Returns 1 on success, 0 on failure.

send()

Sends the message. Returns 1 on success, 0 on failure.

CAVEATS

Due to some recent security patches within Outlook, Microsoft have disabled the automatic access to the Outlook OLE. As some spam and trojan scripts, as well as the usual executables, have been using the application for malicious uses, Microsoft have stepped in an attempt to block this. If these security patches have been applied, when the module accesses Outlook via the OLE, you may see at least one of the following messages.

Security Message 1

When the module attempts to retrieve the From address, a warning message box may appear. The text will be along the lines of:

A program is trying to access e-mail addresses you have 
stored in Outlook. Do you want to allow this?

If this is unexpected, it may be a virus and you should 
choose "No".

[ ] Allow access for [ --------- V]

[Yes]  [No]  [Help]

The message informs you an unknown application is accessing Outlook and asks whether you wish to allow this. Click 'Yes' to allow the script to access the Outlook Address Book. Or you can set a time period, during which the script can access the Outlook OLE.

Security Message 2

On sending the message, you may also activate another warning message box. The text will be along the lines of:

A program is trying to automatically send e-mail on 
your behalf.
Do you want to allow this?

If this is unexpected, it may be a virus and you should 
choose "No".

[Yes]  [No]  [Help]

Click 'Yes' to allow the script to automatically send the message via Outlook.

BUGS, PATCHES & FIXES

There are no known bugs at the time of this release. However, if you spot a bug or are experiencing difficulties that are not explained within the POD documentation, please send an email to barbie@cpan.org or submit a bug to the RT system (http://rt.cpan.org/). However, it would help greatly if you are able to pinpoint problems or even supply a patch.

If you intend to supply a patch, please visit the following URL (and associated pages) to ensure you are using the correct objects and methods.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/off2000/html/olobjApplication.asp

This article contains some interesting background into creating mail messages via Outlook, although it is VB-centric.

http://www.exchangeadmin.com/Articles/Index.cfm?ArticleID=4657

Fixes are dependant upon their severity and my availablity. Should a fix not be forthcoming, please feel free to (politely) remind me.

FUTURE ENHANCEMENTS

A couple of items that I'd like to get working.

* X-Header support * Send without the popups (Outlook Redemption looks possible)

NOTES

This module is intended to be used on Win32 platforms only, with Microsoft (R) Outlook (R) installed.

Microsoft and Outlook are registered trademarks and the copyright 1995-2003
of Microsoft Corporation. All rights reserved.

SEE ALSO

Win32::OLE
Win32::OLE::Const

DSLIP

b - Beta testing
d - Developer
p - Perl-only
O - Object oriented
p - Standard-Perl: user may choose between GPL and Artistic

AUTHOR

Barbie, <<barbie@cpan.org> > for Miss Barbell Productions, http://www.missbarbell.co.uk

COPYRIGHT AND LICENSE

Copyright (C) 2003-2005 Barbie for Miss Barbell Productions
All Rights Reserved.

This module is free software; you can redistribute it and/or 
modify it under the same terms as Perl itself.