Description: | Uses Win32::OLE to edit your Outlook mail from Vim (here,
gvim). Not very sophisticated, but demonstrates the use of Win32::OLE to control the Outlook Object model. To use:
|
use strict;
use warnings;
use Win32::OLE;
use File::Temp qw/ tempfile tempdir /;
my $dir = tempdir( CLEANUP => 1 );
my ($fh, $filename) = tempfile( DIR => $dir, SUFFIX=> '.mail' );
my $out = Win32::OLE->new('Outlook.Application') or die "oops\n";
my ($ins, $ai);
if (! (($ai=$out->Application->ActiveInspector) && ($ins=$ai->CurrentI
+tem))) {
$ins=$out->CreateItem(0); # 0 = olMailItem
$ins->Display;
};
print $fh $ins->Body;
close $fh;
system "gvim $filename";
open ($fh, $filename) or die;
local $/=undef;
my $body=<$fh>;
$ins->{Body}=$body;