use Win32::OLE qw(in with); use Win32::OLE::Const 'Microsoft Word'; $Win32::OLE::Warn = 2; # Throw Errors, I'll catch them my $Word = Win32::OLE->GetActiveObject('Word.Application') || Win32::OLE->new('Word.Application', 'Quit'); my $Doc = Win32::OLE->GetObject($wrdfile) || die &CheckError(); #### or #### my $Doc = $Word->Documents->Open($wrdfile) || die &CheckError();