It always helps to have a working sample, to use as a starting point - so here is some:
#Read Outlook Folder...
use strict;
use Win32::OLE qw(in);
use Constant olFolderCalendar=>9;
my $Outlook = Win32::OLE->GetObject("Outlook.Application")
|| Win32::OLE->new("Outlook.Application");
my $Session = $Outlook->Session;
#my $NameSpace = $Session->GetNameSpace("MAPI");
#my $ContactsFolder = $NameSpace->GetDefaultFolder(olFolderContacts);
ShowSubFolders ($Session->Folders);
#################################################
sub ShowSubFolders{
my $FolderCollection = shift;
my $level = shift || 0;
for my $Folder (in $FolderCollection) {
print " " x $level . "Folder$level: $Folder->{Name}\t(" . $Folder
+->Items->{Count}. ")\n";
#if ($Folder->{Name} =~ /Personal Folders/) {
if ($Folder->{Name} =~ /^Mailbox|^Issues/) {
ShowSubFolders($Folder->Folders, $level + 1);
}
if ($Folder->{Name} =~ /Inbox/) {
my $msgCount=1;
print "*** Please OK the msgbox in outlook that requests externa
+l program access**\n";
$Folder->Items->Sort ("CreationTime",1); # Descending by date
for my $Item (in $Folder->Items) {
print "$msgCount: $Item->{SenderName} : $Item->{Subject}\n";
#print "\t $Item->{Body} \n\n";
last if $msgCount++ > 9;
}
}
}
}
You're just jealous cause the voices are only talking to me.
No trees were killed in the sending of this message. However, a large number of electrons were terribly inconvenienced.