2013-04-10 2 views
0

У меня возникла проблема с выполнением команд из php. Код работает отлично, используя командную строку непосредственно в окнах. Я также могу выполнить команду тестирования, используя php, чтобы создать простой пустой текстовый файл, однако, когда я пытаюсь выполнить мой макрос, ничего не происходит. Я также, но код в bat-файл и пытался выполнить bat-файл и то же самое, ничего не произошло. Я не получаю никаких ошибок в журнале ошибок или вывода на экран. Я использую установку WAMP.php exec openoffice macro windows 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

+0

@Yokhannan Я добавил дополнительную информацию. – Danny

+0

Просто реально ... вы проверили, действительно ли shell_exec включен и работает правильно? shell_exec ("ls -l"); – Abela

ответ

0

Я думаю, что я нашел эту проблему. Служба wamp, которая запускает httpd, не имеет правильных разрешений. Я изменил сервер для входа в систему под учетной записью пользователя, и это сработало. Однако как вы это исправите, установив разрешения на учетные записи wampapache по умолчанию? По умолчанию он регистрируется в «Локальной учетной записи системы», и я проверил разрешающий сервер для взаимодействия с рабочим столом. Я также добавил разрешения на soffice.exe, чтобы разрешить доступ к учетной записи SYSTEM, но все же безрезультатно. Есть идеи по этому поводу? Просто для того, чтобы повторить, я получил его работу после изменения входа в систему на мою собственную учетную запись, но мне интересно, как ее решить, просто установив права на локальную системную учетную запись по умолчанию. Благодаря!

Смежные вопросы