2012-08-16 129 views
0

使用說明here,我可以使用Web服務器上的命令行成功打印Word文檔。例如:使用exec()打印Word文檔

"C:/Program Files (x86)/Microsoft Office/Office12/WINWORD.EXE" c:\temp\test.docx /q /n /mFilePrintDefault /mFileExit 

但是我現在想用PHP來運行這個命令。例如:

echo exec('"C:/Program Files (x86)/Microsoft Office/Office12/WINWORD.EXE" c:\temp\test.docx /q /n /mFilePrintDefault /mFileExit'); 

當我通過運行在瀏覽器中的Web服務器的PHP文件,使用任務管理器,我可以看到WINWORD.EXE * 32個啓動和運行,但它保持運行,並且不打印或自行退出。

PHP自然會返回超時錯誤。命令行方法在15秒內成功運行,所以我不認爲時間長度是問題。

+0

使用'COM(「word.application」)',而不是,http://stackoverflow.com/questions/7144023/opening-word-document-with-read-mode-using-php/7144200#7144200 – 2012-08-16 02:33:09

回答

1

嘗試

echo exec('"C:/Program Files (x86)/Microsoft Office/Office12/WINWORD.EXE" c:\\temp\\test.docx /q /n /mFilePrintDefault /mFileExit'); 

這可能是由於轉義\

+0

謝謝你你的建議。我放棄了它,但沒有任何區別。我同意你的看法,問題可能更多的是與沒有定位文件有關。你認爲路徑是相對於PHP腳本或WINWORD.EXE? – Paul 2012-08-16 04:45:35