Perl中是否有任何方法可以讓我在只讀模式下獲取對象 以避免在文件被其他用戶鎖定時彈出對話框?如何從Perl中以只讀方式打開Word文檔?
$document = Win32::OLE->GetObject("$docFile")
or die "can't open $docFile";
Perl中是否有任何方法可以讓我在只讀模式下獲取對象 以避免在文件被其他用戶鎖定時彈出對話框?如何從Perl中以只讀方式打開Word文檔?
$document = Win32::OLE->GetObject("$docFile")
or die "can't open $docFile";
那是因爲你做錯了。 GetObject
只是用默認行爲打開一個對象。您應該創建Word.Application
對象:
my $word = Win32::OLE->new('Word.Application');
然後使用Documents
收集Open
方法與命名參數ReadOnly
。像這樣:
$doc = $word->Documents->Open({ FileName => $document_path,
, ReadOnly => 1
});
閱讀http://msdn.microsoft.com/en-us/library/bb216319.aspx的語法Documents.Open
爲什麼你們報$ DOCFILE? – innaM 2009-09-24 16:06:47
如果你只想要文本,你可以嘗試在其上運行'antiword'或類似的東西。然而,我不確定'antiword'是否構建在Windows上。這是我在OSX和Linux上處理Word文檔的首選方法。 – Telemachus 2009-09-24 17:24:31