2013-04-10 67 views
0

我遇到了一个执行命令从PHP的问题。代码可以在Windows上直接使用命令行。我也能够执行测试命令使用PHP来创建一个简单的空文本文件,但是当我尝试执行我的宏没有任何反应。我也只是将代码放入bat文件并尝试执行bat文件和相同的东西,什么都没有发生。我没有在错误日志或输出到屏幕上收到任何错误。我正在使用WAMP安装。php exec openoffice宏窗口7

我也尝试以管理员身份运行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"'); 
+0

你给了我们很少的东西,除了一个解释之外。 – Abela 2013-04-10 07:31:47

+0

@Yhanhannan我添加了一些更多信息。 – Danny 2013-04-10 07:36:13

+0

只是真的很快......您是否测试过shell_exec是否实际打开并正常工作? shell_exec(“ls -l”); – Abela 2013-04-10 07:41:40

回答

0

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