0

我在从 php 执行命令时遇到问题。该代码直接在 Windows 上使用命令行可以正常工作。我还可以使用 php 执行测试命令来创建一个简单的空文本文件,但是当我尝试执行我的宏时没有任何反应。我也将代码放入一个bat文件并尝试执行bat文件和同样的事情,什么也没发生。我在错误日志或屏幕输出中没有收到任何错误。我正在使用 WAMP 安装。

我还尝试以管理员身份运行 wamp 并为所有用户设置对 soffice.exe 的完全访问权限。

有关如何解决此问题的任何想法?

谢谢你的时间。

shell_exec('"C:/Program Files (x86)/OpenOffice.org 3/program/soffice.exe" -invisible -headless -norestore macro:///Standard.doc2html.SaveAsHTML("{MYPATH}/MYDOC.doc")');

{MYPATH}/MYDOC 是真实路径的缩写,该路径是正确的,因为它可以在直接命令行中正常工作。

这是在 php 中工作的测试代码

shell_exec('cd. > "{MYPATH}/test.txt"');
4

1 回答 1

0

我想我找到了问题所在。启动 httpd 的 wamp 服务没有正确的权限。我将服务器更改为使用我的用户帐户登录,并且可以正常工作。但是,您将如何通过修复默认帐户 wampapache 登录的权限来解决此问题?默认情况下,它登录到“本地系统帐户”,我检查了允许服务器与桌面交互。我还在 soffice.exe 上添加了权限,以允许 SYSTEM 帐户完全访问,但仍然无济于事。关于那个有什么想法吗?回顾一下,在将服务登录更改为我自己的帐户后,我得到了它的工作,但我很好奇如何通过修复默认本地系统帐户的权限来解决它。谢谢!

于 2013-04-10T17:24:18.317 回答