我在cmd中有一个命令,如下所示
C:\wamp\www\editor\DocTo-master\exe\docto -f C:\wamp\www\editor\uploaded\uploaded_files_21_original\AffidavitinDIR-4.docx -O "C:\wamp\www\editor\uploaded\uploaded_files_21_original\pdf\21.pdf" -T wdFormatPDF当我在cmd中运行它时,它工作得非常好,并且输出(doc到pdf)与预期的一样。但是,当我将相同的命令放入php shell_exec时,如下所示
shell_exec('C:\wamp\www\editor\DocTo-master\exe\docto -f C:\wamp\www\editor\uploaded\uploaded_files_21_original\AffidavitinDIR-4.docx -O "C:\wamp\www\editor\uploaded\uploaded_files_21_original\pdf\21.pdf" -T wdFormatPDF');我没有得到想要的输出与上述代码在php。任何帮助我们都将不胜感激。
发布于 2014-06-14 17:12:04
似乎大多数问题都与权限或重定向有关。
您当前的用户凭据允许您在该目录中创建文件,但是webserver用户名是否可以?
将stderr重定向到stdout以获取错误信息。
引用是正确的吗?
查看the服务器错误日志。
发布于 2015-03-23 05:45:57
我是docto的作者。
这很可能是一个权限问题,因为php不一定被赋予在您的服务器上运行word的正确权限。
我自己在一台运行Word 2010的Windows2012服务器上运行它,它工作得很好。DocTo安装在the服务器根目录之上的子目录中。
PHP是以NTSystem授权运行的
另外,我使用的是exec而不是shell_exec,我不确定这是否有什么不同
发布于 2020-01-17 22:21:14
要解决此问题,必须在以下路径中创建Desktop文件夹:
C:\Windows\SysWOW64\config\systemprofile\Desktop
C:\Windows\System32\config\systemprofile\Desktop
然后转到(控制面板\管理工具\服务)并右键单击您的apache服务。转到"Log On“选项卡,并启用"Allow service to interact with option”选项。
然后重置您的apache服务。
http://pmlearning.info
https://stackoverflow.com/questions/24218232
复制相似问题