PHP的Word自动化问题

时间:2009-09-23 16:12:09

标签: php automation ms-word

我一直在尝试在网络上自动打开和填充Word文件,但在尝试从映射的网络驱动器中打开文件时遇到了问题。我可以从我的c:\ drive打开文件,我将Apache设置更改为以用户身份运行,而不是作为本地服务运行。该脚本在Zend环境中运行得非常好,可以完成所有应有的操作但在Apache上它会读取目标目录,但无法使用COM打开文件。 (该目录是Linux网络存储设备,我有读/写访问权限。)

try {
 com_load_typelib('Word.Application');
 $word = new COM("Word.Application") or die ("Can't start Word");
 $word->visible = 1;

 $handle = opendir('\\\\<host ip addy>\\<sharename>\\<directory>');
 echo $handle . "\n";
 while (false !== ($file = readdir($handle))) {
    echo "$file\n";
 }
 $word->Documents->Open("\\\\<host ip addy>\\<sharename>\\<directory>\\test.doc");

 $word->Documents[1]->Close();
 $word->Quit();
 $word=null;
} catch (com_exception $ce) {
    echo $ce->getMessage;
 }

对于解决这个问题的任何想法我都很感激。

2 个答案:

答案 0 :(得分:0)

具有读/写访问权限,但Apache进程是否正在进行?

您是否收到可重现的错误消息?

答案 1 :(得分:0)

我已经设置Apache作为我的帐户运行,昨天失败了(重启服务器后)但是重新启动我的机器似乎没有打结它并且使用正确的权限运行所有内容。