COM OpenOffice初始化错误

时间:2015-02-28 18:33:49

标签: php openoffice.org

我在php中编码,我在通过COM与OpenOffice交谈时遇到了问题。我已经不得不放弃几次尝试做一些服务器端的openoffice技巧,因为似乎没有任何工作。我已经让自己在当地做了这件事并找到了大多数人都认为非常明确的东西 - 尽管我感到非常惊讶。归结为此命令不起作用。

$osm = new COM("com.sun.star.ServiceManager") or die ("Please be sure that OpenOffice.org is installed.\n");

请你给我一些指示。我已经下载了最新的OpenOffice,它在从Windows桌面摆动时运行良好,但就目前而言。你能告诉我在php上使用上面的代码需要做些什么。目前,我得到一个长时间的停顿,然后发出一个错误,说COM对象无法初始化或类似 - 这在本地和从我的网站运行时都会发生。

在哪里/我如何看到com.sun.star.moon.etc是否在我的系统上注册并准备就绪并等待被叫?需要哪些权限(这甚至意味着什么,如何将它们更改为需要)?我在Windows中找到了一个名为COM +的服务,该服务没有运行并启动,但它没有帮助。

任何人 - 请帮助!

提前致谢。

1 个答案:

答案 0 :(得分:0)

一些建议:

1)确保您仅在Windows中尝试该代码。

2)为了能够使用PHP COM类,首先需要在php.ini中启用它。因此,添加此行extension = php_com_dotnet.dll并重新启动Apache或IIS。

3)在运行代码(脚本)的同一台计算机上安装OpenOffice。那就是让事情变得简单一点。您可能必须使用dcomcnfg设置权限。

试图回答你的一些问题:

1)要获取COM对象列表并设置权限,请运行dcomcnfg。一旦"组件服务"窗口打开,单击Console Root - >组件服务 - >计算机 - >我的电脑 - > DCOM配置。有关更多信息,请参阅以下网址:https://technet.microsoft.com/en-us/library/Bb633148.aspx