First of all, you might want to read the Site How To, especially on
how to format writeups.
If you're using Win32::OLE, you need documentation
on your counterpart, in this case, documentation for
the Outlook (97 or 2000) object model. This documentation is
available from Microsoft, either through your MSDN subscription
or even online (http://msdn.microsoft.com), but here are
some pointers, which I will update when I get home to
my working Outlook-Phone-Number-Extractor (used for reverse lookup
of known telephone numbers) :
my $App = Win32::OLE->GetActiveObject( "Outlook.Application" );
die "No Outlook\n" unless defined $App;
my $OE = $App->Explorer();
... To be filled in when I'm at home ...
Thinking some more about this, what you really want to
talk to is not Outlook, but the Address Book (also somewhat
related to Outlook, but not completely so). If you're doing
some stuff with some contact items (like, 300+ items),
the Outlook object model becomes unwieldly and slow,
then you will have to dump Perl and use a language that
lets you use real MAPI (an API that is just a fancy
object oriented interface to a database, soon to be faded
out by Microsoft, but it works and works relatively well).
Update 1 (A reply to seekers node below, not really warranting its own node, as it's offtopic IMO): LDAP is only available with Exchange Server 5.5 (or higher), Outlook itself has no capabilities for offering LDAP support. Outlook can function as a (limited) LDAP client, as can Netscape, but not as a server.
Update 2 I posted a snippet to the Code Catacombs which dumps all phone numbers of all contacts (used to do a reverse lookup). |