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 に答える