【问题标题】:COM OpenOffice initialisation errorCOM OpenOffice 初始化错误
【发布时间】:2015-02-28 18:33:48
【问题描述】:

我正在使用 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.ini 使用上面的代码需要什么地方吗?目前我得到了一个长时间的停顿,然后是一个错误,说 COM 对象不能被初始化或类似的 - 这在本地和从我的网站运行时都会发生。

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

任何人 - 请帮忙!

提前致谢。

【问题讨论】:

    标签: php openoffice.org


    【解决方案1】:

    几个建议:

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

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

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

    试图回答您的一些问题:

    1) 要获取 COM 对象列表并设置权限,请运行 dcomcnfg。 “组件服务”窗口打开后,单击控制台根目录 -> 组件服务 -> 计算机 -> 我的电脑 -> DCOM 配置。更多信息请参考这个网址:https://technet.microsoft.com/en-us/library/Bb633148.aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-09
      • 1970-01-01
      • 2017-04-05
      • 2015-03-18
      • 2019-08-05
      • 2013-04-12
      • 2018-08-27
      相关资源
      最近更新 更多