1

我正在使用模板文档上的查找/替换方法生成带有 COM(组件对象模型)的 MS Word .docx 文件。

问题:它在我的 PC 上运行良好,但我无法在生产 PC 上运行!!我在两台计算机上都有相同的配置。

首先我实例化一个 COM 对象$word = new COM('word.application'); echo "Loaded Word, version {$word->Version}\n";说 12.0。所以我推断到目前为止一切都很好。命令出了点问题$word->Documents->Open("c:\\test.docx");。看起来我放在括号之间的任何内容都没有通过。和我说的一样$word->Documents->Open(" ");

在下一行:$word->Selection->Find->ClearFormatting();我收到错误消息:“尝试获取非对象的属性”,之后出现致命错误。看起来像传入了一个空字符串,Documents->Open()并销毁了 COM 对象。

我尝试了相对路径、绝对路径、反斜杠、双斜杠……看起来与它没有任何关系。同样,该命令$word->visible = 1;也没有提出来。

两台 PC 上的配置大致相同:第一台 PC:-win7 Ultimate,32 位,ms Word 7,相同的 WAMP 版本第二台 PC:-win7 Professional,32 位,ms Word 7,相同的 WAMP 版本

我在第二台 PC 上尝试了宏,例如: Documents.Open FileName:="test.docx" 等,它工作正常。我不知道第二台 PC 有什么不同以及可能是什么原因。

4

0 回答 0